2013-11-02 52 views
3

在IOS 7中,我們可使用時啓用的iAd很容易:如何在使用Sprite Kit時啓用iAd?

self.canDisplayBannerAds = YES;

在UIViewController中

代碼 viewDidLoad中

不過,我不能在我的ViewController(即加載SKScene的ViewControl)使用。加載時我的遊戲崩潰了。

那麼如何在我的遊戲中使用Sprite Kit來激活iAd?

+0

我需要我的遊戲** **風景,所以我在補充一點:** - (無效)viewWillLayoutSubviews **,但它會崩潰。但是,如果我在** viewDidLoad **中給出它,這個遊戲將是**肖像**。當我可以添加此代碼** self.canDisplayBannerAds = YES; **啓用iAD? – Huygamer

+0

http://www.ymc.ch/en/ios-7-sprite-kit-setting-up-correct-scene-dimensions/ – LearnCocos2D

回答

3

您只能在UIViewController子類中顯示iAd。你做得對。把下面的代碼放到你的UIViewController中,而不是放在SKScene中。

請參閱本教程的確切代碼:http://tutorials.veasoftware.com/2013/10/10/how-to-add-iads/

+0

***由於未捕獲的異常「NSInvalidArgumentException」而終止應用程序,原因:' - [ UIView場景]:無法識別的選擇器發送到實例0x17e57680'這樣做會造成一些錯誤,當我這樣做。你在遊戲中嘗試過嗎? – Huygamer

+0

你有哪些iAd代碼?在UIViewController中還是在SKScene中? – BalestraPatrick

+0

在** - (void)viewWillLayoutSubviews **中,因爲我需要我的遊戲環境。 – Huygamer

0

這有可能是你正在訪問的視圖屬性。使用iAd時,您需要使用.originalContentView替換.view。例如:

SKView* skView = (SKView *)self.view; 

被替換

SKView* skView = (SKView *)self.originalContentView;