【问题标题】:Communication from SKScene to UIViewController从 SKScene 到 UIViewController 的通信
【发布时间】:2018-03-11 00:36:28
【问题描述】:

我正在使用Google AdMob 并通过ViewController 展示广告。现在,我的GameScene 中有一个按钮,应该告诉ViewController 显示广告。

起初,我尝试了委托,但由于SKScene 已经有委托,所以这不起作用,但后来我偶然发现this answer 显示了SKScene 在其@987654329 中调用方法的方法@。不过,答案似乎很粗略,因为SKScene 引用了它的ViewController。根据this,我的理解是,这是一种不好的做法,假设在我的情况下,SKScene 是 MVC 结构中的View

那么我应该如何通知ViewControllerSKScene 中发生的事件?

【问题讨论】:

  • 提示:通知。
  • @ElTomato 我打算使用 NSNotificationCenter 但我认为只有在向多个事物广播时才应该使用它
  • 您可以随意使用 NotificationCenter。没有规则手册。在我的应用程序中,当只有一个侦听器时我使用委托,但对于所有其他有多个侦听器的情况,我只使用 NotificationCenter。效果很好,我还没有被闪电击中。 (另外,我认为 Apple 建议您使用 NotificationCenter 而不是 NSNotificationCenter,除非您需要传递引用语义?类似的东西。也许在开始实施通知之前先看看。)

标签: ios swift sprite-kit


【解决方案1】:

您可以查看我的answer,它描述了如何使用delegate pattern 与 UIViewController 通信 SKScene。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-28
    • 1970-01-01
    • 1970-01-01
    • 2014-03-01
    • 1970-01-01
    相关资源
    最近更新 更多