我在一个类中定义了这个布尔值:

private boolean showad;


我在同一类中定义了此函数,该类检查showad是否设置为true

public void adon() {
  if (showad == true) {
    AdView adView = (AdView) this.findViewById(R.id.ad);
    adView.loadAd(new AdRequest());
  }
}


我如何使此函数adon()重复运行以检查showad布尔值的变化?

最佳答案

好的,我在这里走了个弯路,猜想您实际上并不是真正想要一个无限循环来检查布尔值以展示广告。因此,让我给您一些真正的建议,而不是在评论中大怒。看来您想检查是否在特定屏幕上显示广告:活动或片段。

因此,我对您的建议是:

如果条件检查,则将其放入onResume()方法中,然后在此处显示/不显示广告。

@Override
    public void onResume() {
        super.onResume();
            if (showad == true) {
                  AdView AdView = (AdView) this.findViewById (R.id.ad);
                  adView.loadAd (AdRequest new ());
            }
}


这样,只要屏幕加载/刷新,它就会检查。我在想您真的不希望实时检查是否仍要展示您的广告,因为这对用户来说很不舒服。只需在onResume()中检查它即可。如果您还有其他问题,请发表评论,我将扩大答案。如果您喜欢答案,请投票并接受。

但是,如果真的必须是实时的。我可以帮助您设置一个可运行的计时器/延迟,它会不时检查一次。

关于java - 调用功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15009674/

10-10 11:53