iAd的SpriteKit中的Swift

我正在研究一个应用程序,并希望包括iAd的。 我已经设法添加横幅广告,他们工作得很好。 不过,我想要一个更大的添加,填充大部分的屏幕,但不是全屏。 我使用Benzene的问题代码添加了adBanner, 并给出了erdekhayser的解决scheme。

Apple iAd文档(第3页)

上面引用的链接来自苹果文档,苹果将iAd称为MREC广告。 这是我想要的。 我不能解决如何创build和添加一个。 我曾尝试调整adBanner的大小,但仍然无法弄清楚。

任何帮助,将不胜感激

这是迄今为止的代码:

import UIKit import SpriteKit import iAd import Twitter var adBannerView: ADBannerView! class GameViewController: UIViewController, ADBannerViewDelegate { var scene: GameScene! func loadAds() { adBannerView = ADBannerView(frame: CGRectZero) adBannerView.delegate = self adBannerView.hidden = true view.addSubview(adBannerView) } override func viewDidLoad() { super.viewDidLoad() // Configure the view. let skView = view as SKView skView.showsFPS = false skView.showsNodeCount = true skView.showsPhysics = false /* Sprite Kit applies additional optimizations to improve rendering performance */ skView.ignoresSiblingOrder = true /* Set the scale mode to scale to fit the window */ scene = GameScene(size: skView.bounds.size) scene.scaleMode = .AspectFill skView.presentScene(scene) //iAd loadAds() } //iAd func bannerViewWillLoadAd(banner: ADBannerView!) { println("Ad about to load") } func bannerViewDidLoadAd(banner: ADBannerView!) { adBannerView.center = CGPoint(x: adBannerView.center.x, y: view.bounds.size.height - view.bounds.size.height + adBannerView.frame.size.height / 2) adBannerView.hidden = false println("Displaying the Ad") } func bannerViewActionDidFinish(banner: ADBannerView!) { println("Close the Ad") } func bannerViewActionShouldBegin(banner: ADBannerView!, willLeaveApplication willLeave: Bool) -> Bool { //pause game here println("Leave the application to the Ad") return true } func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) { //move off bounds when add didnt load adBannerView.center = CGPoint(x: adBannerView.center.x, y: view.bounds.size.height + view.bounds.size.height) println("Ad is not available") } 

canDisplayBannerAds设置为true。

 override func viewDidLoad() { super.viewDidLoad() // Configure the view. let skView = self.originalContentView as! SKView loadAds() self.canDisplayBannerAds = true // <-- skView.showsFPS = false skView.showsNodeCount = true skView.showsPhysics = false /* Sprite Kit applies additional optimizations to improve rendering performance */ skView.ignoresSiblingOrder = true /* Set the scale mode to scale to fit the window */ scene = GameScene(size: skView.bounds.size) scene.scaleMode = .AspectFill skView.presentScene(scene) 

}