而不是AdView会出现一个空框(Android元素布局问题)

时间:2015-11-18 12:03:02

标签: android xml layout admob

我正在尝试将AdView放置到布局:

<?xml version="1.0" encoding="utf-8"?>
<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/home_layout"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="1">

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

</LinearLayout>

<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="@string/banner_ad_unit_id"/>

</LinearLayout>

它显示正确的内容和视图底部的方框,应该是一个adView,但我看到空框,广告没有出现。

在我的日志中,我看到了:

Ad finished loading.
W/cr.BindingManager: Cannot call determinedVisibility() - never saw a connection for the pid: 30285
Scheduling ad refresh 30000 milliseconds from now.
Ad finished loading.
Ad is not visible. Not refreshing ad.

我做错了什么?提前谢谢。

3 个答案:

答案 0 :(得分:2)

以下是可能的错误

  1. 您的横幅广告单元ID不正确
  2. 您尚未在Google广告小组上正确设置广告,请点击以下链接 follow this link
  3. 如果我的回答解决了您的问题,请投票

答案 1 :(得分:1)

您已将内部LinearLayout的高度设置为match_parent。这将消耗所有可用空间,而不会为您的AdView留下任何空间,因此它会认为它不可见。将LinearLayout复活到:

<LinearLayout
    android:id="@+id/home_layout"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1">

答案 2 :(得分:0)

得到了我的问题的答案。 XML是正确的,只是Adblock没有在工作流程中初始化。为此,我只需在onCreate Action中初始化活动adMob块:

AdView mAdView = (AdView) findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);

还导入depreacted库:

import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;

感谢他人的帮助和建议。