У меня есть вид баннера и вы хотите создать пользовательскую кнопку закрытия. Моя проблема заключается в том, что кнопка отображается до того, как объявление будет загружено и отображено.Как использовать GADBannerViewDelegate для выполнения действий на adViewDidReceiveAd
class RootVC: UIViewController, GADBannerViewDelegate {
var googleAdBanner: GADBannerView!
var googleBannerCloseBtn: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
googleAdBanner = GADBannerView(frame:CGRectMake(0,0,100,100))
googleAdBanner.center = CGPointMake(self.view.bounds.size.width/2, self.view.bounds.size.height/2)
googleAdBanner.adUnitID = "xx"
googleAdBanner.rootViewController = self
googleAdBanner.loadRequest(GADRequest())
adViewWillPresentScreen(googleAdBanner)
googleAdBanner.delegate = self
self.view.addSubview(googleAdBanner)
}
func adViewWillPresentScreen(bannerView: GADBannerView!) {
googleBannerCloseBtn = UIButton(frame: CGRectMake(5 , 5, 25, 25))
googleBannerCloseBtn.backgroundColor = UIColor.clearColor()
googleBannerCloseBtn.setImage(UIImage(named: "closeBtn"), forState: .Normal)
googleBannerCloseBtn.setTitle("Click Me", forState: UIControlState.Normal)
googleBannerCloseBtn.addTarget(self, action: #selector(RootVC.buttonAction(_:)), forControlEvents: UIControlEvents.TouchUpInside)
googleBannerCloseBtn.tag = 1
googleAdBanner.addSubview(googleBannerCloseBtn)
}
Как я представляю кнопку только тогда, когда GADBannerView
загрузил объявление и представлено?
То же поведение с adViewDidReceiveAd
. Кнопка видна, даже если «GADBannerView
» является «невидимым», поскольку в настоящее время нет загруженного объявления.
Экраны по требованию. Как вы видите, кнопка, то есть subView
из GADBannerView
, отображается перед отображением объявления.
Не могли бы вы добавить скриншот к вашему вопросу о том, что кнопка закрытия выглядит при добавлении к вашему 'GADBannerView'. Нужно лучше понять, что вы описываете. –
@ Добавлены экраны DanielStorm –
Я уезжаю от компьютера, но посмотрю на это позже. Еще один вопрос. Вам нужно создать полноэкранное межстраничное объявление или рекламное объявление в нижней части представления? Использование баннера, например, как вы, немного неортодоксально. Межстраничный «GADIntersitial» - это полноэкранное объявление, обычно платит больше и поставляется с собственной кнопкой закрытия. –