我一直尝试使用iAd
和Admob
横幅执行以下操作:
首先我将iAd放在故事板上的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
答案 0 :(得分:1)
如果您正在实施自己的ADBannerView
,则需要从self.canDisplayBannerAds = true
中删除viewDidLoad
。
self.canDisplayBannerAds = true
可用于在您的应用中实施iAd横幅的无忧方式。这将为您创建ADBannerView
,并根据其是否从iAd网络收到广告来显示或隐藏ADBannerView
。
您要么实施自己的ADBannerView
,要么使用self.canDisplayBannerAds = true
,而不是两者。