2011-03-21 16 views
10

Tengo un banner publicitario admob que me gustaría poner en la parte inferior de la pantalla, y el resto del contenido cambia para llenar el espacio disponible cuando el carga de anuncios. Veo exactamente lo que quiero que suceda cuando coloco el anuncio en la parte superior de un diseño lineal y luego configuro el alto de mi contenido en fill_parent. ¿Es posible lograr esto al revés? Cuando coloco mi anuncio debajo de mi contenido con la altura fill_parent, no se muestra porque no hay suficiente espacio. Tengo una solución con un diseño relativo y un margen en la parte inferior para ahorrar espacio para el anuncio, pero no me gusta el espacio en negro que está allí hasta que se carga el anuncio (si es que lo hace). ¿Algunas ideas?Cómo hacer que el anuncio se muestre en la parte inferior de la pantalla sin superposición

Respuesta

31

Puede hacerlo mediante el uso de RelativeLayout sin hacer cosas hacker:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent"> 
    <bla.bla.AdView 
      android:id="@+id/ad" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" 
      android:background="#FF0000"/> 
    <ListView 
      android:id="@android:id/list" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_above="@id/ad"/> 
</RelativeLayout> 

Si el anuncio no se carga por alguna extraña razón, la ListView tendrá todo el espacio disponible. Por otro lado, si el anuncio se carga, el anuncio no superpondrá el ListView.

+0

muchas gracias cristian, que funcionó exactamente como yo quería :) –

Cuestiones relacionadas