Android AdMob не показывает LinearLayout в нижней части - PullRequest
5 голосов
/ 04 мая 2011

Хорошо, действительно странная ситуация с AdMob.Я хочу разместить объявление внизу у меня есть LinearLayout.Когда я делаю это никогда не появляется.Когда я помещаю это сверху, это обнаруживается отлично.Не уверен, в чем дело, вот мой код.Я получаю предупреждение в LogCat, которое гласит: «Недостаточно места для показа рекламы! Хочет <480,75> Имеет: <480, 0>»

LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/res/mypackage"
 android:id="@+id/mainmenulayout"
 android:orientation="vertical" 
 android:layout_width="fill_parent"
 android:layout_height="fill_parent">

    <ImageView  android:id="@+id/headerpic"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:src="@drawable/header"/>

    <ListView android:id="@android:id/list" 
    android:divider="#00000000" 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:drawSelectorOnTop="false"
    android:background="@android:color/transparent"
    android:cacheColorHint="#00000000"
    android:layout_alignParentTop="true">
    </ListView>

    <com.google.ads.AdView 
      android:id="@+id/adView"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      ads:adUnitId="myadunit"
      ads:adSize="BANNER"
    />
 </LinearLayout>

и мой onCreate ():

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.appmenu);

    // Look up the AdView as a resource and load a request.
    AdView adView = (AdView)this.findViewById(R.id.adView);
    adView.loadAd(new AdRequest());

    String[] mainMenuList = getResources().getStringArray(R.array.mainMenuList);
    TypedArray[] picFiles = getResources().obtainTypedArray(R.array.arrayIcon);

    setListAdapter(new MyIconAdapter(mainMenuList, picFiles));

    this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

}  //close onCreate

Ответы [ 2 ]

17 голосов
/ 04 мая 2011

Я предполагаю, что ваш вид списка заполняет экран и толкает объявление вниз.Попробуйте этот xml для представления списка:

<ListView android:id="@android:id/list" 
    android:divider="#00000000" 
    android:layout_width="fill_parent"
    android:layout_height="0px" 
    android:layout_weight="1"
    android:drawSelectorOnTop="false"
    android:background="@android:color/transparent"
    android:cacheColorHint="#00000000"
    android:layout_alignParentTop="true">
    </ListView>

Это даст представлению списка только столько недвижимости, сколько доступно после того, как представление изображения и представление объявления заявят о своей доле.

1 голос
/ 04 мая 2011

Это тоже может помочь ... Реклама Admob не показывается - Android

Как говорит Тед, представление списка может занимать всю доступную недвижимость. Даже с wrap_content, если список заполнен большим количеством данных до того, как заполнится adView, adView не сможет развернуть и разместить объявление.

Если вы не делаете то, что я сделал, и жестко программируете, его высота составляет около 50 dp Не очень элегантно, но все же эффективно.

...