AdMob AdView和ViewPager是什么?

8

我有一个类似这样实现ViewPager的Android应用:

http://www.youtube.com/watch?v=C6_1KznO95A

我不知道如何在ViewPager下面实现AdView。 我尝试通过编程和xml将AdView放在ViewPager下方。 没有错误,但广告没有显示。

我的xml代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

<android.support.v4.view.ViewPager
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_alignParentBottom="top"
    android:layout_height="0dp"
    android:layout_weight="1"/>

<com.google.ads.AdView
    android:id="@+id/ad"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentBottom="true"
    android:layout_below="@+id/pager"
    ads:adSize="BANNER"
    ads:adUnitId="@string/admob_publisher_id"
    ads:loadAdOnCreate="true" >
</com.google.ads.AdView>


请发布您的XML布局,它应该实际出现... - Abhijit Chakra
2个回答

11

好的,您有几个问题。

  1. 方向仅适用于LinearLayout。
  2. layout_alignParentBottom需要一个布尔值而不是"top"
  3. layout_weight仅适用于LinearLayout而非RelativeLayout

您有两个选项。使用RelativeLayout,但首先定义AdView,ViewPager定义为其上方,或者使用LinearLayout并使用layout_weight使ViewPager填充未使用的空间。

作为RelativeLayout:

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

<com.google.ads.AdView
    android:id="@+id/ad"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    ads:adSize="BANNER"
    ads:adUnitId="@string/admob_publisher_id"
    ads:loadAdOnCreate="true" />

<android.support.v4.view.ViewPager
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_alignParentTop="true"
    android:layout_above="@+id/ad"
    />

</RelativeLayout>

或者作为 LinearLayout

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

<android.support.v4.view.ViewPager
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"/>

<com.google.ads.AdView
    android:id="@+id/ad"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    ads:adSize="BANNER"
    ads:adUnitId="@string/admob_publisher_id"
    ads:loadAdOnCreate="true" />

</LinearLayout>

就我个人而言,我会选择LinearLayout,因为它感觉更简单。


2
这对我很有帮助。
    AdView adView = (AdView) findViewById(R.id.ad);
    adView.bringToFront();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接