Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何检查AdMob横幅广告是否已加载?(Swift 3)_Ios_Swift_Admob - Fatal编程技术网

Ios 如何检查AdMob横幅广告是否已加载?(Swift 3)

Ios 如何检查AdMob横幅广告是否已加载?(Swift 3),ios,swift,admob,Ios,Swift,Admob,我有我的AdMob广告所有设置和工作,但我想为他们制作一个动画,当他们第一次加载。例如,我在屏幕底部有一个横幅广告,当它加载时,我希望它向上。我现在拥有的动画: UIView.animate(withDuration: 1, animations: { self.banner.frame.origin.y -= 350 }) 效果很好,但只有当广告加载速度足够快时才会显示给用户。如何检查?您可以通过将gadbanerview的委托设置为所需的类,例如se

我有我的AdMob广告所有设置和工作,但我想为他们制作一个动画,当他们第一次加载。例如,我在屏幕底部有一个横幅广告,当它加载时,我希望它向上。我现在拥有的动画:

        UIView.animate(withDuration: 1, animations: {
        self.banner.frame.origin.y -= 350
    })

效果很好,但只有当广告加载速度足够快时才会显示给用户。如何检查?

您可以通过将
gadbanerview
的委托设置为所需的类,例如
self
视图控制器:

override func viewDidLoad() {
    super.viewDidLoad()

    // let's assume that you init the banner view somewhere in your code...
    adMobBannerView.delegate = self
}
然后实施:

通知代理ad请求已成功接收ad。该 如果需要,代理可能希望将横幅视图添加到视图层次结构中 还没有添加

向其中添加动画代码,如下所示:

func adViewDidReceiveAd(_ bannerView: GADBannerView!) {
    UIView.animate(withDuration: 1, animations: {
        self.banner.frame.origin.y -= 350
    })
}

谢谢你的快速回复。我想我错过了一些东西——AdviewDidReceived是如何被呼叫的?它不是被GADBannerView或其他什么东西单独调用的,我不知道我遗漏了什么。你能在视图中看到广告吗?好的,如果您非常确定已经正确地完成了集成步骤,那么您可以实现并向其中添加
print(error.localizedDescription)
,然后对其进行调试,您将看到问题所在。