[英]Sprite Kit SKScene with wrong size after integrating iAd or not working at all
我正在尝试将iAd集成到Sprite Kit游戏中。
在添加游戏场景之前,当我设置“ canDisplayBannerAds = true”时,会显示横幅添加,但gameScene不起作用:
override func viewDidLoad() {
super.viewDidLoad()
canDisplayBannerAds = true
// Configure de main view
if let skView = view as? SKView {
// Create and configure scene
scene = GameScene(size: skView.bounds.size)
scene!.scaleMode = .AspectFill
// Show the scene
skView.presentScene(scene!)
}
}
添加SKScene之后,当我设置“ canDisplayBannerAds = true”时,将显示iAd并且游戏场景现在正在运行,但是尺寸错误,但比添加横幅后剩余的屏幕大。
override func viewDidLoad() {
super.viewDidLoad()
// Configure de main view
if let skView = view as? SKView {
skView.showsFPS = true
// Create and configure scene
scene = MarketGameScene(size: skView.bounds.size)
scene!.scaleMode = .AspectFill
scene!.marketGameViewController = self
// Show the scene
skView.presentScene(scene!)
}
canDisplayBannerAds = NSUserDefaults.standardUserDefaults().boolForKey(UserDefaultsKey.ShowAds)
}
我想念什么? 谢谢
这是为您服务的一些工作代码,这些代码仅对我有用。 甚至不需要self.candisplaybannerads = true
因为我对此有一些self.candisplaybannerads = true
。 广告会根据屏幕尺寸自动更改尺寸,并且位于屏幕底部。 隐藏和显示广告使用
AdBanner.hidden = true/false
......
import iAd
class viewController: UIViewController, ADBannerViewDelegate {
var AdBanner = ADBannerView()
override func viewDidLoad() {
super.viewDidLoad()
/* Ad Banner Settings */
AdBanner = ADBannerView()
AdBanner.frame = CGRectZero
AdBanner.delegate = self
self.AdBanner.frame = CGRectMake(0, self.view.frame.size.height-self.AdBanner.frame.size.height, self.AdBanner.frame.size.width, self.AdBanner.frame.size.height)
AdBanner.backgroundColor = UIColor.clearColor()
self.view .addSubview(AdBanner)
}
/* All iAd Functions */
func bannerViewActionShouldBegin(banner: ADBannerView!, willLeaveApplication willLeave: Bool) -> Bool {
/* whatever you need */
return true
}
func bannerViewActionDidFinish(banner: ADBannerView!) {
/* whatever you need */
}
func bannerViewDidLoadAd(banner: ADBannerView!) {
AdBanner.hidden = false
}
func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) {
NSLog("Error Loading Ad")
/* whatever you need */
AdBanner.hidden = true
}
func bannerViewWillLoadAd(banner: ADBannerView!) {
/* whatever you need */
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.