Android,定位屏幕底部的元素,修复

时间:2014-04-18 11:58:15

标签: android android-layout android-fragments

我试图通过将片段注入容器来在每个屏幕的底部放置一个广告视图。我可以使用LinearLayout将广告视图置于操作栏下方的顶部。我尝试过各种RelativeLayout的组合,但似乎没有任何组合可以使调整大小的广告视图坚持下去。

这里的布局适用于顶部:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
             android:id="@+id/fragmentContainer"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
             android:orientation="vertical"
             xmlns:ads="http://schemas.android.com/apk/res-auto"
        >

    <com.google.android.gms.ads.AdView android:id="@+id/adView"
                                       android:layout_width="wrap_content"
                                       android:layout_height="wrap_content"
                                       ads:adSize="SMART_BANNER"/>
</LinearLayout>

我将片段添加到fragmentContainer。如何将广告视图静态定位在屏幕底部?我已经尝试了各种布局嵌套策略,到目前为止还没有工作。

横幅不应叠加或切断片段的任何部分。

1 个答案:

答案 0 :(得分:4)

具有alignParentBottom属性的RelativeLayout怎么样?此外,在FrameLayout之外的另一个视图组中添加片段并不是一个好习惯。这不会卡住或破坏您的活动,但它可能会提供一些错误。这样的事情可以解决问题:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:ads="http://schemas.android.com/apk/res-auto" >

    <com.google.android.gms.ads.AdView 
        android:layout_alignParentBottom="true"
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        ads:adSize="SMART_BANNER" />

    <FrameLayout
        android:id="@+id/fragmentContainer"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_above="@id/adView" />

</RelativeLayout> 

希望这会有所帮助。