android kotlin中的多个AdListener
我正在制作一个应用程序,供个人使用,在单个活动上有多个横幅广告。 我想听所有的广告onAdLoaded()
事件。 为此,我必须为每个广告添加AdListener
。 如果我有十个广告,我必须写十次相同的代码吗?
所以,我的问题是,有没有什么办法来减少像onClickListener
这样的多个按钮这样的代码? 我已经尝试以按钮的onClickListener
相同的方式做到这一点,但它不起作用。
我的代码的一部分:
ad1.adListener = object : AdListener() { override fun onAdLoaded() { super.onAdLoaded() incrementCounter() } } ad2.adListener = object : AdListener() { override fun onAdLoaded() { super.onAdLoaded() incrementCounter() } } ad3.adListener = object : AdListener() { override fun onAdLoaded() { super.onAdLoaded() incrementCounter() } }
我必须为所有广告单元重复相同的代码。这使我的代码笨重,这是我的问题。
您可以将所有视图分组在列表中:
val adViews = listOf(ad1, ad2, ...)
然后,您可以迭代并设置侦听器:
adViews.forEach { it.adListener = object : AdListener() { override fun onAdLoaded() { super.onAdLoaded() incrementCounter() } } }