AdView布局占据整个屏幕

时间:2013-05-02 11:52:18

标签: android android-layout admob

我有以下XML布局:

            <RelativeLayout
                android:layout_width="fill_parent"
                android:layout_height="fill_parent">

                <ScrollView
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:fillViewport="true"
                    android:layout_above="@+id/adcontent1"
                    android:background="#0000FF">

                    <TextView
                    android:id="@+id/tempview"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"/>

                </ScrollView>

                <RelativeLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="#FF0000"
                    android:layout_alignParentBottom="true"
                    android:id="@+id/adcontent1" >

                    <com.google.ads.AdView
                        xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
                        android:id="@+id/adview1"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        app:adSize="BANNER"
                        app:adUnitId="lah-di-da"
                        android:layout_alignParentBottom="true"
                        android:layout_centerHorizontal="true">

                    </com.google.ads.AdView>

                 </RelativeLayout>

            </RelativeLayout>

问题是,由于某些原因,wrap_content AdView height属性的RelativeLayout会导致整个RelativeLayout占据整个屏幕。如果我设置了一个硬值(50px),那么我会让ScrollView占据整个屏幕 - 50px(就像我想要的那样,除了RelativeLayout高度应该等于{{ 1}}身高。有谁知道为什么AdView迫使父AdView填满屏幕?

注意:这些背后有布局,但它们对此特定问题没有影响(通过设置height = 50px进行测试)。

2 个答案:

答案 0 :(得分:2)

尝试将广告的高度设置为&#39; 50dp&#39;并发布您的结果

答案 1 :(得分:1)

由于android:layout_centerHorizontal="true"不能与wrap_content一起使用(因为它知道需要居中的区域,所以它与fill_parent一起使用)。删除CenterHorizo​​ntal代码并使用wrap_content而不是提供不允许动态提供广告的高度值。