2011-03-21 20 views
10

Ho un banner pubblicitario admob che mi piacerebbe mettere in fondo allo schermo e il resto del contenuto ridimensionare per riempire lo spazio disponibile quando il carica annunci in. Vedo la cosa esatta che voglio che accada quando inserisco l'annuncio nella parte superiore di un layout lineare e poi l'altezza del contenuto impostata su fill_parent. È possibile raggiungere questo risultato al contrario? Quando inserisco il mio annuncio sotto il mio contenuto con l'altezza fill_parent, non viene visualizzato poiché non c'è spazio sufficiente. Ho una soluzione con un layout relativo e un margine in basso per salvare lo spazio per l'annuncio, ma non mi piace lo spazio nero che è lì fino a quando l'annuncio non viene caricato (se lo fa affatto). Qualche idea?Come visualizzare l'annuncio nella parte inferiore dello schermo senza sovrapposizione

risposta

31

È possibile farlo usando RelativeLayout senza fare cose 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> 

Se l'annuncio non viene caricato per qualche strana ragione, il ListView avrà tutto lo spazio disponibile. D'altra parte, se l'annuncio viene caricato, lo ListView non verrà sovrapposto dall'annuncio.

+0

molte grazie cristian, che ha funzionato esattamente come lo volevo :) –

Problemi correlati