2011-01-14 2 views
1

J'essaie d'intégrer des annonces (admob) dans mon application Android. Cela fonctionne principalement, sauf pour un problème avec la mise en page. Ma mise en page se compose de:Android GridView avec des annonces ci-dessous

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    xmlns:app="http://schemas.android.com/apk/res/com.example.photos"> 

    <LinearLayout android:orientation="horizontal" 
     android:layout_width="wrap_content" android:layout_height="wrap_content" 
     android:id="@+id/status_layout"> 

     <ImageView android:id="@+id/cardStatus" 
      android:layout_width="wrap_content" android:layout_height="wrap_content" /> 

     <TextView android:layout_width="fill_parent" 
      android:layout_height="wrap_content" android:text="@string/hello" 
      android:id="@+id/cardStatusText" /> 

    </LinearLayout> 

    <GridView android:id="@+id/imageGridView" 
     android:layout_width="fill_parent" android:layout_height="fill_parent" 
     android:padding="10dp" android:verticalSpacing="10dp" 
     android:horizontalSpacing="10dp" android:numColumns="auto_fit" 
     android:columnWidth="100dp" android:stretchMode="columnWidth" 
     android:gravity="center" android:layout_below="@id/status_layout" /> 



    <!-- Place an AdMob ad at the bottom of the screen. --> 
    <!-- It has white text on a black background. --> 
    <!-- The description of the surrounding context is 'Android game'. --> 
    <com.admob.android.ads.AdView android:id="@+id/ad" 
     android:layout_width="fill_parent" android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" app:backgroundColor="#000000" 
     app:primaryTextColor="#FFFFFF" app:secondaryTextColor="#CCCCCC" 
     app:keywords="Android Photo" /> 


</RelativeLayout> 

Les annonces sont affichées en bas de l'écran, comme je le souhaite. Cependant, ils semblent être superposés ou dessinés au-dessus de la partie inférieure de la vue de la grille. Je voudrais que la grille soit plus courte, afin que l'annonce puisse remplir la partie inférieure de l'écran, et ne pas masquer une partie de la grille. Le problème est le plus ennuyeux lorsque vous faites défiler jusqu'au bas de la grille, et vous ne pouvez toujours pas voir les derniers éléments de la grille en raison de l'annonce.

Je ne suis pas sûr que ce soit la manière standard que les annonces AdMob fonctionnent. Si c'est le cas, ajouter un peu de remplissage au bas de la grille (si c'est possible) serait dû à l'astuce. De cette façon, l'utilisateur peut faire défiler un peu plus loin et voir la dernière ligne en plus de l'annonce.

Je viens de passer de LinearLayout à RelativeLayout après avoir lu des problèmes similaires avec ListViews. Maintenant, mon annonce est au bas de la grille au lieu d'au-dessus de la grille, donc je me rapproche.

Pensées? -Kevin

Répondre

4

mis cette propriété dans votre gridview

android:layout_above="@+id/ad" 
+1

ont parfaitement fonctionné ... merci. – ktambascio