4

可以在 init 方法中配置(定位精灵、添加可见节点等)SKScene 的内容吗?

这些东西的正确位置在哪里:init?didMoveToView?别的东西?

4

1 回答 1

8

didMoveToView:每次场景由 SKView 呈现时调用。在 didMoveToView 中定位和添加精灵的优点:您可以初始化许多视图而不会占用大量内存。缺点:如果您删除一个视图,然后再次添加它, didMoveToView: 会再次被调用。这意味着您需要确保在 didMoveToView: 开头重置场景:(仅当您打算删除并再次添加时)。

初始化 SKScene 时调用init 。使用 init 定位和添加精灵的优点:它只被调用一次,一旦你将它呈现在场景中,一切就准备好了。如果您需要预加载场景以进行快速切换,这可能会很方便。缺点:每个场景都会占用它在初始化时而不是在显示时执行所有添加精灵所需的内存。

就个人而言,我更喜欢在init方法中做所有事情。

于 2014-03-10T10:40:03.890 回答