我正在使用GADBannerView来显示横幅广告。这是我加载广告的方式:
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(true)
if !pro {
// In this case, we instantiate the banner with desired ad size.
bannerView = GADBannerView(adSize: kGADAdSizeBanner)
addBannerViewToView(bannerView)
bannerView.adUnitID = myAdUnit
bannerView.rootViewController = self
bannerView.load(GADRequest())
bannerView.delegate = self
print("did load banner")
} else {
if bannerView != nil {
bannerView.isHidden = true
bannerView.removeFromSuperview()
print("Removed bannerView")
}
}
}
因此加载工作正常。我的第二个视图控制器连接在标签栏控制器中。当我在第二个视图控制器中按
unlockButton
时,它将值pro
设置为true。导航回第一个视图控制器时,我可以看到它在日志视图中显示为Removed bannerView,但是横幅仍然在那里。有小费吗? 最佳答案
如果要摆脱GADBannerView
类的所有子视图,只需执行以下操作:
for v in view.subviews {
if v is GADBannerView {
v.removeFromSuperview()
}
}