Recyclerview 中的原生广告随机出现

Posted

技术标签:

【中文标题】Recyclerview 中的原生广告随机出现【英文标题】:Native ads in Recyclerview coming randomly 【发布时间】:2021-12-30 12:41:27 【问题描述】:

我希望在每 9 个位置之后投放广告,而不是在第一个位置之后 (自动出现在第一个位置)

customerAdapter 类中 - onBindViewHolder 方法

if ((position%9 == 0) and  (position > 0)) 
            MobileAds.initialize(context)
            //build ad
            val adLoader = AdLoader.Builder(context, "ca-app-pub-xxxxxxxxxxxxxxxx/yyyyyyyyy")
                .forNativeAd 
                    val style = NativeTemplateStyle.Builder().withMainBackgroundColor(
                        ColorDrawable(
                            Color.WHITE
                        )
                    )
                        .build()
                    //    val template = findViewById<TemplateView>(R.id.my_template)
//                template.setStyles(style)
//                template.setNativeAd(it)

                    holder.templateView.setStyles(style)
                    holder.templateView.setNativeAd(it)
                .build()
            //show ad
            adLoader.loadAd(AdRequest.Builder().build())
            holder.templateView.visibility = View.VISIBLE
        

ViewHolder 类中 - 添加了这个变量

val 模板视图:模板视图 = itemView.findViewById(R.id.my_template)

原生广告在任意位置随机加载。不知道为什么它不符合我的条件。请帮助检查并让我知道我做错了什么。

【问题讨论】:

您是否正在处理位置不应显示广告的情况?如果你给的ViewHolder之前是用来展示广告的,你需要清除/隐藏onBindViewHolder中的那个东西,否则它仍然会显示它 【参考方案1】:

添加了 else 部分,它现在可以正常工作了。

 else
            holder.templateView.visibility = View.GONE
        

【讨论】:

以上是关于Recyclerview 中的原生广告随机出现的主要内容,如果未能解决你的问题,请参考以下文章

Recyclerview - Facebook 原生广告 - 不可点击

当我滚动 Recyclerview 时,Admob 原生广告显示空白

如何在 RecyclerView 之间添加 Facebook Audience Network 原生广告

Google Admob原生广告

Facebook 原生广告未显示,错误“1011 - 显示格式不匹配”

在 recyclerview 中实现 facebook 横幅广告