Admob横幅窃取焦点

时间:2015-06-30 04:25:40

标签: android focus admob

我的Admob横幅有些麻烦。 每当我在一个活动中添加两个横幅时,有时第二个横幅(通常位于屏幕底部)会“抢断”焦点。 这样,用户必须一直向上滚动才能开始阅读文本。 我尝试了所有可能的焦点等等,但它们似乎都没有效果。 我按照android开发者页面上的说明进行操作(非常清晰易懂),所以我怀疑在这里发布任何代码是否有用。 代码有效,所以我没有收到任何错误,我可以在这里发布...

顺便说一句:允许在一个活动中添加两个横幅,只要它们在同一时间不可见......

任何帮助将不胜感激......

谢谢!

4 个答案:

答案 0 :(得分:9)

只需在根布局中添加此标记。一行足以修复此

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Sabre//Sabre VObject 4.1.2//EN
CALSCALE:GREGORIAN
BEGIN:VEVENT
UID:sabre-vobject-d4b1ccb3-2197-4ee4-aab8-7bc2516adbf8
DTSTAMP:20170123T182612Z
SUMMARY:testev2
DESCRIPTION:
DTSTART;TZID=Europe/Athens:20170214T090000
DTEND;TZID=Europe/Athens:20170215T170000
LOCATION:
ORGANIZER;CN=Organizer Name:mailto:organizer@example.com
ATTENDEE;CN=Test User:MAILTO:test.user@somewhere.com
END:VEVENT
END:VCALENDAR

答案 1 :(得分:2)

on onCreate()将adview的可见性设置为GONE

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    .........

    adView.setVisibility(View.GONE)

   ..........

}

在加载广告之后,将其可见性设置为可见

adView.setAdListener(new AdListener() {
    @Override
    public void onAdLoaded() {
        super.onAdLoaded();

        adView.setVisibility(View.VISIBLE)
    }
});

希望这会有所帮助;)

答案 2 :(得分:1)

William的上述评论是正确的。 AdMob建议将横幅放在滚动内容区域之外,这意味着您一次只需要一个横幅。您可以查看AdMob Banner Guidance page以获取更多相关信息。

我很好奇你在哪里阅读"如果页面滚动,一次只能在屏幕上看到一个广告,并且根据AdSense计划政策,发布商可能会放置不超过3个广告整个页面上的广告单元。"听起来您可能误解了AdMob文档的一些AdSense文档。如果没有,请告诉我您在哪里阅读该信息。

答案 3 :(得分:0)

@android解决方案可能不适用于原生广告。一个完整的解决方案是,在调用adView.setVisibility(View.VISIBLE)之前,您还应该遍历所有adView子项并为每个子视图调用setFocusable(false)。