2017-08-17 10 views
0

最近私のゲームにAdMobを実装しましたが、GameSceneに広告を表示する際に問題があります。アップアプリの負荷が、私はそうのようGameViewControllerからのMainMenuシーンをロードする場合:プレイヤー機が起動SwiftにAdMob広告を表示するとシーンが切り替わります

override func viewWillLayoutSubviews() { 
    super.viewWillLayoutSubviews() 

    let skView = self.view as! SKView 
    skView.ignoresSiblingOrder = true 
    skView.showsFPS = true 
    skView.showsNodeCount = true 

    let mainMenu = MainMenu() 
    mainMenu.scaleMode = .aspectFill 
    mainMenu.size = view.bounds.size 
    skView.presentScene(mainMenu) 
} 

した後、私はGameSceneにシーンを変更し、彼らが死ぬまで、プレイヤーがゲームを果たしています。私はGameSceneにObserverを追加してGameViewControllerに死なければ広告を表示するように指示しました。

var interstitial: GADInterstitial! 

override func viewDidLoad() { 
    super.viewDidLoad() 
    interstitial = loadAd() 
    NotificationCenter.default.addObserver(self, selector: #selector(self.playerDied), name: NSNotification.Name("ShowAd"), object: nil) 
    NotificationCenter.default.post(name: NSNotification.Name("ShowingAd"), object: nil) 

} 

をプレイヤーが死ぬときに、私は通知センターに「ShowAd」を掲載し、広告が.isReadyチェックして表示して行く:私はこのようなのviewDidLoadでオブザーバを作成しました。ただし、広告が終了すると、gameSceneを再開したmainMenuのシーンがリロードされます。誰も広告を表示する方法を知っているが、広告が表示された後も現在のシーンがGameSceneになっていますか?ありがとう。

答えて

0

私はviewControllerのfunc viewWillLayoutSubviews()が呼び出されていると推測しています。 func viewWillLayoutSubviews()にあるすべてのコードをoverride func viewWillAppear(_ animated: Bool)

+0

に送信してください。応答に感謝します。私はそれを試みたが、うまくいかなかった。しかし、あなたの試した後、それは私が働いたviewDidLoadに入れて考えるようになった!私の解決に手伝ってくれてありがとう! – Jake

関連する問題