无法以编程方式将iAd添加到Spritekit Swift

时间:2015-10-20 03:04:17

标签: ios swift iad

我刚刚使用swift和spritekit为ios制作了我的第一款游戏,并考虑在主菜单中实现iAds横幅广告或插页式广告。但问题是我在没有任何故事板的情况下以编程方式制作了标题画面。我搜索了谷歌搜索但我无法找到任何教程或一个易于理解的示例,教我如何以编程方式实现iAd到GameScene。我会喜欢你的一些提示或例子!

我计划在MainScene中集成iAd,但无法找到实施广告的解决方案。

import iAd
class MainScene: SKScene , ADBannerViewDelegate {

}

1 个答案:

答案 0 :(得分:1)

首先,您需要创建两个变量: -

var bannerView = ADBannerView()
var isBannerVisible = false

然后在你的viewDidLoad或didMove中查看put: -

bannerView.frame = CGRectMake(0, self.view!.frame.size.height, self.view!.frame.width, 80)
bannerView.delegate = self
isBannerVisible = false

下一步是添加以下功能: -

func bannerViewWillLoadAd(banner: ADBannerView!) {

}

func bannerViewDidLoadAd(banner: ADBannerView!) {

        if(isBannerVisible == false){

            if(bannerView.superview == nil){

                self.view?.addSubview(bannerView)

            }

            UIView.beginAnimations("iAdBannerShow", context: nil)
            banner.frame = CGRectOffset(banner.frame, 0, -banner.frame.size.height)
            UIView.commitAnimations()

            isBannerVisible = true

        }

}

func bannerViewActionDidFinish(banner: ADBannerView!) {

}

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


func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) {

        if(isBannerVisible == true){

            UIView.beginAnimations("iAdBannerHide", context: nil)
            banner.frame = CGRectOffset(banner.frame, 0, banner.frame.size.height)
            UIView.commitAnimations()
            isBannerVisible = false

        }

}

除此之外,请确保添加ADBannerViewDelegate并导入我已经看到的iAd,这应该可行。如果您有任何问题,请告诉我,这是我在swift spritekit游戏中使用的内容。

祝你好运,

拉​​结