【问题标题】:How to add node to a view from a different class in Swift如何从 Swift 中的不同类将节点添加到视图
【发布时间】:2015-07-30 02:18:27
【问题描述】:

我有一个名为 GameScene 的 SKScene。通常,当我在该类中工作时,我可以将子节点添加到视图中:self.addChild(...) 但是,我想添加来自不同类的节点。我试过GameScene().addChild(...) 但这似乎不起作用。有什么建议吗?

【问题讨论】:

  • GameScene() 创建一个 GameScene。您可能希望保留对现有场景的引用。
  • 你能澄清一下吗?为什么要添加节点,甚至不在 GameScene 中?

标签: swift sprite-kit sknode


【解决方案1】:

您需要获取游戏场景的当前实例才能向其中添加子对象。 GameScene() 只是初始化一个新场景的方法,与你正在使用的当前场景无关。

相反,您可以返回初始化它的位置(可能在视图控制器中)并在那里初始化您的其他类(您要从中添加子级的类)。更改构造函数,以便您可以传入 GameScene 的该实例并将其保留为您要从中调用的类的属性/变量。然后,像变量一样使用它并添加所有你想要的孩子。

【讨论】:

    【解决方案2】:

    在你需要添加节点的文件中试试这个:

    addChild(OtherClass().functionWhereYouAddTheNodes())

    这对我有用。

    铁路。

    【讨论】:

      猜你喜欢
      • 2020-03-24
      • 2012-04-15
      • 2017-09-03
      • 1970-01-01
      • 2014-04-16
      • 2020-09-30
      • 2012-02-10
      • 2011-09-28
      • 2015-03-20
      相关资源
      最近更新 更多