Search code examples
androidlayoutadview

AdMob AdView apears on top of ListView in Android


I am trying to get an AdView to appear at the bottom of my layout, its sort of working but for some reason my AdView is covering the last few rows of my ListView, instead of apearing right after it. I have tried a bunch of things including setting the ListView with height 0px. and weight 1, all with no luck. Any clues?

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout 
android:layout_width="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:layout_height="fill_parent">

<LinearLayout  
android:id="@+id/home_layout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"

>
<LinearLayout android:layout_width="fill_parent" 
android:id="@+id/banner" 
android:background="#000000" 
android:layout_height="45dip"
android:orientation="horizontal"
>

    <TextView android:text="MAIN" 
    android:id="@+id/txtTitle" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:paddingTop="10dip"
    android:paddingLeft="5dip"
    android:layout_weight="1">
    </TextView>

    <TextView android:text="HEADER" 
    android:id="@+id/txtTitle" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:paddingTop="10dip"    
    android:layout_weight="1">
    </TextView>  

</LinearLayout>

 <View android:id="@+id/divider"
android:background="@drawable/bw_gradient"
android:layout_width="fill_parent"
android:layout_height="3dip"  

/>

<ListView 
android:id="@android:id/list" 
android:layout_height="wrap_content"
android:layout_width="fill_parent"    
>
</ListView>

</LinearLayout>

        <LinearLayout 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         android:id="@+id/ad_layout"             
         android:gravity="bottom"
         android:layout_alignParentBottom="true"             
         android:layout_alignBottom="@+id/home_layout"           
         >

        <com.google.ads.AdView 
         android:id="@+id/adView2"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         ads:adUnitId="5555555555"
         ads:adSize="BANNER"
         ads:loadAdOnCreate="false"             
         />
        </LinearLayout>


Solution

  • <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout
      android:layout_width="wrap_content"
      xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
      android:layout_height="fill_parent">
    
      <LinearLayout
        android:id="@+id/home_layout"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:layout_above="@+id/ad_holder">
        <LinearLayout
          android:layout_width="fill_parent"
          android:id="@+id/banner"
          android:background="#000000"
          android:layout_height="45dip"
          android:orientation="horizontal">
    
          <TextView
            android:text="MAIN"
            android:id="@+id/txtTitle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingTop="10dip"
            android:paddingLeft="5dip"
            android:layout_weight="1">
          </TextView>
    
          <TextView
            android:text="HEADER"
            android:id="@+id/txtTitle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingTop="10dip"
            android:layout_weight="1">
          </TextView>
    
        </LinearLayout>
    
        <View
          android:id="@+id/divider"
          android:background="@drawable/bw_gradient"
          android:layout_width="fill_parent"
          android:layout_height="3dip" />
    
        <ListView 
    android:id="@android:id/list" 
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"    
    ></ListView>
    
      </LinearLayout>
    
      <LinearLayout
        android:id="@+id/ad_holder"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/ad_layout"
        android:gravity="bottom"
        android:layout_alignParentBottom="true">
    
        <com.google.ads.AdView
          android:id="@+id/adView2"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          ads:adUnitId="5555555555"
          ads:adSize="BANNER"
          ads:loadAdOnCreate="false" />
      </LinearLayout>