[英]iAd ADBannerView changes the size of SKScene
我覺得我到處都看過了,無法弄清楚。 我正在嘗試在菜單屏幕的底部顯示橫幅廣告,如下所示:
但是,當我顯示“游戲結束”屏幕(上面也有廣告)后,主菜單如下所示:
任何幫助將不勝感激。 我使用NSNotificationCenter
調用廣告, GameOver
SKScene調用presentScene
返回主菜單。 我認為這與該調用中的幀大小有關,但我不知道如何解決。
在我的GameViewController中:
override func viewDidLoad() {
//code
loadAds()
NSNotificationCenter.defaultCenter().addObserver(self, selector: "showiAdBanner", name: "showiAdBanner", object: nil)
NSNotificationCenter.defaultCenter().addObserver(self, selector: "hideiAdBanner", name: "hideiAdBanner", object: nil)
}
func bannerViewDidLoadAd(banner: ADBannerView!) {
adBannerView.hidden = false
}
func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) {
adBannerView.hidden = true
}
func loadAds(){
adBannerView = ADBannerView(frame: CGRect.zeroRect)
adBannerView.center = CGPoint(x: adBannerView.center.x, y: view.bounds.size.height - adBannerView.frame.size.height / 2)
adBannerView.delegate = self
adBannerView.hidden = true
adBannerView.layer.zPosition = 10
view.addSubview(adBannerView)
}
func showiAdBanner() {
if adBannerView.bannerLoaded {
adBannerView.hidden = false
}
}
func hideiAdBanner() {
adBannerView.hidden = true
}
在SpriteKit的“開始”場景中:
override func didMoveToView(view: SKView) {
//code
NSNotificationCenter.defaultCenter().postNotificationName("showiAdBanner", object: nil)
}
最后,我為自己的情況找到了解決方案。 我只是加載了一個不同的SKScene
,稍等片刻,然后打電話給我的另一個。 這樣,菜單始終看起來相同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.