AdMob AdView重叠列表视图在RelativeLayout



我试图在我的Android应用程序中显示AdView。我有一个这样的RelativeLayout:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/mainLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >
    <ListView
        android:id="@+id/listaFicheros"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:visibility="visible"
        tools:listitem="@android:layout/simple_list_item_2" >
    </ListView>
    <TextView
        android:id="@+id/sinFicheros"
        style="@android:style/TextAppearance.Large"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentTop="true"
        android:gravity="center"
        android:clickable="true"
        android:text="@string/SinFicheros" >
    </TextView>
</RelativeLayout>

我以编程方式添加AdView(我需要),并像这样设置布局:

adView = new AdView(this, AdSize.BANNER, ID_EDITOR);
ListView listaFicheros = (ListView)findViewById(R.id.listaFicheros);
RelativeLayout.LayoutParams adLayoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
adLayoutParams.addRule(RelativeLayout.ALIGN_BOTTOM, listaFicheros.getId());
adView.setLayoutParams(adLayoutParams);
RelativeLayout.LayoutParams listaLayoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT);
listaLayoutParams.addRule(RelativeLayout.ABOVE, adView.getId());
listaFicheros.setLayoutParams(listaLayoutParams);
RelativeLayout layout = (RelativeLayout)findViewById(R.id.mainLayout);
layout.addView(adView);

Adview在屏幕底部正确显示,但我的问题是Adview与ListView的最后一项重叠,我看不到它。

有人能帮忙吗?

你已经为listaFicheros设置了布局参数为MATCH_PARENT, MATCH_PARENT(即接管整个父视图),并且你已经告诉AdView将它的底部与listaFicheros的底部对齐。这就是为什么你有一个重叠。

有几种方法可以解决这个问题。建议将AdView更改为ALIGN_PARENT_BOTTOM。强烈建议你在xml中构造AdView,因为它将帮助你更清楚地考虑你的布局

最新更新