繁体   English   中英

Admob横幅窃取焦点

[英]Admob banner steals focus

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

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

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

谢谢!

只需在根布局中添加此标记。一行足以解决此问题

android:descendantFocusability="blocksDescendants"

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)
    }
});

希望这可以帮助 ;)

威廉的上述评论是正确的。 AdMob建议将横幅放在滚动内容区域之外,这意味着您一次只需要一个横幅。 您可以在AdMob横幅指南页面上查看相关信息。

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM