8

我有ViewPager Android应用程序中实现这样的:AdMob AdView和ViewPager?

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

我不知道如何实现ViewPager下面的AdView。 我试图将AdView以编程方式放在ViewPager下方,并以xml格式显示。 没有错误,但广告没有显示。

我的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> 

+0

请发布您的XML布局它应该来实际.. –

回答

10

OK,你有一对夫妇的问题。

  1. 方向仅与LinearLayout相关。
  2. layout_alignParentBottom需要一个布尔值不是 “顶”
  3. layout_weight只是针对的LinearLayout相关,也不RelativeLayout的

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

由于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> 

OR为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中。

+0

这应该被标记为正确的答案。 – sublimental

1

这对我有效。

AdView adView = (AdView) findViewById(R.id.ad); 
    adView.bringToFront(); 
+0

为我工作:) – prateek31