将广告添加到linearLayout的底部

时间:2014-04-28 12:49:05

标签: android android-linearlayout adview

我不知道如何将视图放在linearLayout的底部。我尝试使用layout_gravity =" bottom",但它不起作用。 这是我的代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:background="@drawable/background_register_login"
    tools:context="com.mcd.fantaleghe.MainActivity$PlaceholderFragment" >


     <com.google.android.gms.ads.AdView android:id="@+id/adView"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_gravity="bottom"
                     ads:adUnitId="MY_AD_UNIT_ID"
                     ads:adSize="BANNER"/>

</LinearLayout>

3 个答案:

答案 0 :(得分:0)

嗯......你可以通过多种方式解决这个问题,但最简单的是:

1-将LinearLayout更改为FrameLayout并删除行android:orientation="vertical"

2-将此添加到您的LinearLayout android:gravity="bottom"

3-您可以按照此Tutorial进行操作,忘记将广告视频添加到xml中,因为在教程中它们会以编程方式包含它。

答案 1 :(得分:0)

我以前总是使用LinearLayout,因为它很简单,但你应该考虑使用RealtiveLayout来避免很多麻烦。

RelativeLayout中,您可以设置layout_alignParentBottom=truelayout_alignBelow=@+id/thingToBeBelow,广告将在正确的位置。

答案 2 :(得分:0)

使用LinearLayout作为父级,您需要创建容器布局以填充AdView上方的其他区域。您可以在容器布局中添加所有其他子视图,也可以将其留空。

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

<com.google.android.gms.ads.AdView
    android:id="@+id/welcomeAdView"
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:layout_weight="1"
    ads:adSize="SMART_BANNER"
    ads:adUnitId=""/>
</LinearLayout>

另一种方法是将RelativeLayout用作父级,并将AdView放置为父级bottom

<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="match_parent"
    android:layout_height="wrap_content"
    ads:adSize="SMART_BANNER"
    ads:adUnitId=""/>

</RelativeLayout>