我一直在尝试使用 iAd
和 Admob
横幅广告执行以下操作:
首先,我将 iAd 放在 Storyboard 中的 Admob 横幅上,我添加了所有需要的约束,如果 iAd 无法接收,我将显示 Admob 横幅,如果我收到 iAd,我将隐藏 Admob,然后显示 iAd 横幅..等等。
此问题并非一直发生,而 admob 横幅显示 iAd 出现并将 admob 横幅推到顶部而不隐藏它。但在代码中它应该隐藏它。这个问题发生在隐藏和显示,隐藏和显示多次之后..
请检查以下屏幕截图。
ViewController
代码:
@IBOutlet weak var Gbanner: GADBannerView!
@IBOutlet weak var AbannerView: ADBannerView!
override func viewDidLoad() {
super.viewDidLoad()
AbannerView.delegate = self
self.canDisplayBannerAds = true
showadmob()
// Do any additional setup after loading the view, typically from a nib.
}
func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) {
println("didFailToReceiveAdWithError")
AbannerView.hidden = true
Gbanner.hidden = false
}
func bannerViewActionDidFinish(banner: ADBannerView!) {
println("bannerViewActionDidFinish")
}
func bannerViewDidLoadAd(banner: ADBannerView!) {
println("bannerViewDidLoadAd")
Gbanner.hidden = true
AbannerView.hidden = false
}
func bannerViewWillLoadAd(banner: ADBannerView!) {
println("bannerViewWillLoadAd")
}
func showadmob(){
self.Gbanner.adUnitID = "somethingelsehere"
self.Gbanner.rootViewController = self
var request: GADRequest = GADRequest()
self.Gbanner.loadRequest(request)
}
在这里下载项目:https://yadi.sk/d/1VcjfJG9ixNZg
最佳答案
如果您要实现自己的 ADBannerView
,则需要从 viewDidLoad
中删除 self.canDisplayBannerAds = true
。
self.canDisplayBannerAds = true
可用于在您的应用程序中轻松实现 iAd 横幅。这将为您创建一个 ADBannerView
,并根据它是否从 iAd 网络接收到广告来显示或隐藏 ADBannerView
。
您要么实现自己的 ADBannerView
,要么使用 self.canDisplayBannerAds = true
,但不能同时使用。
关于ios - 放置 iAd 和 Admob 横幅引起问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32468286/