将AdView与ViewPager和PagerTitleStrip配合使用

时间:2014-03-06 21:16:52

标签: android android-layout admob

我的Android应用程序有以下布局,但不会显示广告。 在logcat中,我有关于“W /广告:没有足够空间展示广告的错误。需要640x100,但只有0x1038”。

我的布局:

<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">

    <ViewPager
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/pager"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1">
    <android.support.v4.view.PagerTitleStrip
        android:id="@+id/pager_title_strip"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:layout_gravity="top" />
    </ViewPager>

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

我如何在Oncreate中加载广告:

    adView = (AdView) findViewById(R.id.adView);
    AdRequest adRequest = new AdRequest.Builder()
            .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
            .addTestDevice("xxxxxxx") //gnex
            .build();
    // Start loading the ad in the background.
    adView.loadAd(adRequest);

有什么想法吗?

3 个答案:

答案 0 :(得分:0)

似乎现在有足够的空间以线性布局显示广告。 做下面的事情。 1)给予adview一些权重。 2)或者将线性布局更改为相对布局,以便adview可以显示足够的空间。 3)同时检查您是否获得了适当尺寸的广告。

以下链接也可以为您提供帮助。

AdMob "Not enough space to show ad" error

答案 1 :(得分:0)

更改此内容。

<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">

<ViewPager
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1">
<android.support.v4.view.PagerTitleStrip
    android:id="@+id/pager_title_strip"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="top" />
</ViewPager>

<com.google.android.gms.ads.AdView
    android:id="@+id/adView"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    ads:adSize="BANNER"
    ads:adUnitId="xxxxxxxx"/>
</LinearLayout>

答案 2 :(得分:0)

我怀疑这是由于pager的layout_height配置。

android:layout_height="0dp"

尝试将其更改为

android:layout_height="wrap_content"