将 ViewController 中的函数传递给 GameOverScene.swift
Pass function in ViewController to GameOverScene.swift
我试图将 ViewController 中的函数传递给 GameOverScene。我看到了很多答案,但没有一个对我有用。所以我希望有人能帮助我。
我制作的功能适用于我从 youtube 上的 greeky lemons 教程中获得的插页式 AdMob。如果玩家死亡,我想展示广告。
所以在 GameViewController.swift 我使用这个函数:
func ShowAd(sender: AnyObject) {
if (interstital.isReady) {
interstital.presentFromRootViewController(self)
interstital = CreateAd()
}
}
现在我不知道如何在 GameOverScene.swift 中使用此功能。
有谁知道如何解决这个问题?如果您需要更多信息,请告诉我。非常感谢你! :)
我今天直接回答了一个类似的问题,最简单的方法是 NSNotification Center
本质上是在您的视图控制器中使用您的 showAd 函数在 viewDidLoad 中添加一个观察者。
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(showAd(_:)), name: "ShowInterAdKey", object: nil)
选择器是要调用的函数,名称是引用此观察者的键。
比起在你的游戏场景中,当你想显示广告时,你 post 使用你的密钥通知。
NSNotificationCenter.defaultCenter().postNotificationName("ShowInterAdKey", object: nil)
查看此答案以获取更多详细信息,因为您的代码看起来与我的回答非常相似。
您应该在展示广告之前制作广告,而不是相反。
为了让它变得更好,你实际上应该更早地预加载它,而不是在尝试显示它时。
我试图将 ViewController 中的函数传递给 GameOverScene。我看到了很多答案,但没有一个对我有用。所以我希望有人能帮助我。 我制作的功能适用于我从 youtube 上的 greeky lemons 教程中获得的插页式 AdMob。如果玩家死亡,我想展示广告。
所以在 GameViewController.swift 我使用这个函数:
func ShowAd(sender: AnyObject) {
if (interstital.isReady) {
interstital.presentFromRootViewController(self)
interstital = CreateAd()
}
}
现在我不知道如何在 GameOverScene.swift 中使用此功能。 有谁知道如何解决这个问题?如果您需要更多信息,请告诉我。非常感谢你! :)
我今天直接回答了一个类似的问题,最简单的方法是 NSNotification Center
本质上是在您的视图控制器中使用您的 showAd 函数在 viewDidLoad 中添加一个观察者。
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(showAd(_:)), name: "ShowInterAdKey", object: nil)
选择器是要调用的函数,名称是引用此观察者的键。
比起在你的游戏场景中,当你想显示广告时,你 post 使用你的密钥通知。
NSNotificationCenter.defaultCenter().postNotificationName("ShowInterAdKey", object: nil)
查看此答案以获取更多详细信息,因为您的代码看起来与我的回答非常相似。 您应该在展示广告之前制作广告,而不是相反。 为了让它变得更好,你实际上应该更早地预加载它,而不是在尝试显示它时。