放置iAd和Admob横幅会导致问题

时间:2015-09-08 22:31:01

标签: ios swift admob iad

我一直尝试使用iAdAdmob横幅执行以下操作:

首先我将iAd放在故事板上的Admob横幅上,并且我已经添加了所有必需的限制,如果iAd未能收到,我将显示Admob横幅如果我收到iAd我将隐藏Admob然后显示iAd横幅..等

这个问题并不是一直发生的,而admob横幅正在显示iAd来并将admob横幅推到顶部而不隐藏它。但在代码中它应该隐藏它。这个问题发生在隐藏和显示,隐藏和显示多次之后..

请查看以下屏幕截图。

enter image description here

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

1 个答案:

答案 0 :(得分:1)

如果您正在实施自己的ADBannerView,则需要从self.canDisplayBannerAds = true中删除viewDidLoad

self.canDisplayBannerAds = true可用于在您的应用中实施iAd横幅的无忧方式。这将为您创建ADBannerView,并根据其是否从iAd网络收到广告来显示或隐藏ADBannerView

您要么实施自己的ADBannerView,要么使用self.canDisplayBannerAds = true,而不是两者。