Отображать диалог прогресса, пока AdMob выбирает рекламу - PullRequest
0 голосов
/ 28 апреля 2011

У моего приложения есть активность, когда объявление лучше всего размещать в центре экрана. Я заставил другие элементы сидеть относительно объявления либо выше, либо ниже. Мне нравится, как это выглядит, когда реклама присутствует, но когда начинается действие, все перемешивается.

То, что я хотел бы сделать, это отобразить диалоговое окно хода выполнения в том месте, где будет показываться объявление, если AdMob разместит объявление.

Я реализовал свои объявления в формате XML, задокументированном здесь: http://code.google.com/mobile/ads/docs/android/banner_xml.html

Может кто-нибудь поставить меня на правильный путь?

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:myapp="http://schemas.android.com/apk/res/com.aydabtu.BroadcastSMS"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/megaphone_320x480"
    >
    <TextView
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:gravity="left"
        android:text="@string/num_messages"
        android:background="@drawable/semiTransparentLt"
        android:textColor="@drawable/black"
        android:textStyle="bold"
        android:id="@+id/num_msgs_title"
        android:layout_above="@+id/smsMsgBody_editText"
        />
    <TextView
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:text="0"
        android:background="@drawable/semiTransparentLt"
        android:textColor="@drawable/black"
        android:textStyle="bold"
        android:id="@+id/num_msgs"
        android:layout_toRightOf="@id/num_msgs_title"
        android:layout_alignTop="@id/num_msgs_title"
        />
    <EditText
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:singleLine="false"
        android:lines="5"
        android:minLines="5"
        android:gravity="top|left"
        android:id="@id/smsMsgBody_editText"
        android:hint="@string/sms_edittext"
        android:layout_above="@+id/body_len"
        />
    <TextView
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:gravity="right"
        android:paddingRight="10sp"
        android:text="0"
        android:background="@drawable/semiTransparentLt"
        android:textColor="@drawable/black"
        android:textStyle="bold"
        android:id="@id/body_len"
        android:layout_above="@+id/ad"
        />
    <TextView
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:gravity="left"
        android:paddingRight="10sp"
        android:text="@string/clear_text"
        android:background="@drawable/semiTransparentLt"
        android:textColor="@drawable/black"
        android:textStyle="bold"
        android:id="@+id/clear_text"
        android:layout_above="@id/ad"
        />
    <com.admob.android.ads.AdView
        android:id="@id/ad"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        myapp:backgroundColor="@drawable/black"
        myapp:primaryTextColor="@drawable/white"
        myapp:secondaryTextColor="@drawable/drkGrey"
        android:layout_above="@+id/broadcastMsg_button"     
        />
    <Button
        android:layout_height="wrap_content"
        android:id="@id/broadcastMsg_button"
        android:layout_width="fill_parent"
        android:text="@string/broadcast_sms_button"
        android:layout_centerInParent="true"
        />
</RelativeLayout>

1 Ответ

1 голос
/ 28 апреля 2011

Я бы сказал, поместите макет кадра, где у вас есть AdView сейчас. Поместите AdView и круговой ProgressBar в AdView. Может потребоваться некоторая настройка, чтобы скрыть ProgressBar после появления AdView, но он должен работать.

Если вы разместите свой точный XML. Я дам более подробное объяснение.

...