IAd横幅广告激动屏幕

时间:2015-02-28 20:22:47

标签: swift sprite-kit iad candisplaybannerads

我已将我的游戏发布到App Store,并在屏幕底部启用了iAd横幅广告。我使用self.CanDisplayBannerAds = true来启用广告。广告正常运行,加载或离开广告没有问题。问题是每当广告出现时,屏幕都会抖动。这个混蛋只会瞬间禁用触摸。这一瞬间足以让玩家输掉游戏。这非常烦人,绝对是一个需要修复的问题。有没有其他人有这个问题?我有什么办法可以解决它吗?

如果您希望自己查看问题,可以下载该应用,免费:https://appsto.re/us/FB4u5.i

1 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,这为我解决了这个问题。

import UIKit
import SpriteKit
import iAd
import GameKit


let adBannerView = ADBannerView(frame: CGRect.zeroRect)

class GameViewController: UIViewController, ADBannerViewDelegate  {
  var bannerView:ADBannerView?
  override func viewDidLoad() {
    super.viewDidLoad()

    if let scene = GameScene.unarchiveFromFile("GameScene") as? GameScene {
        let skView = self.view as SKView
        loadAds()
  }
 }


 func loadAds() {

    adBannerView.center = CGPoint(x: adBannerView.center.x, y: view.bounds.size.height - adBannerView.frame.size.height / 2)

    adBannerView.delegate = self
    adBannerView.hidden = true
    view.addSubview(adBannerView)

}

func bannerViewWillLoadAd(banner: ADBannerView!) {

}

func bannerViewDidLoadAd(banner: ADBannerView!) {
    adBannerView.hidden = false
}

func bannerViewActionDidFinish(banner: ADBannerView!) {

}

func bannerViewActionShouldBegin(banner: ADBannerView!, willLeaveApplication willLeave: Bool) -> Bool {
    return true
}

func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) {
    adBannerView.hidden = true
}