Joh*_*Mac 15 xcode sprite-kit swift ios10
使用Xcode 8,swift 3和我使用启用了实体的游戏模板创建iOS应用程序.我注意到我看到一些初始精灵的双节点数,即使我只使用了addChild一次.
我补充道
override func sceneDidLoad() {
print(#function) ... }
Run Code Online (Sandbox Code Playgroud)
代码,不知道为什么这个被调用两次.
日志文件...
2016-09-20 10:21:31.482 MMDecon1[3295:791435] SKUtil.m: MGGetBoolAnswer is not available in the simulator.
sceneDidLoad()
sceneDidLoad()
Run Code Online (Sandbox Code Playgroud)
我补充道
override func didMove(to view: SKView) {..}
Run Code Online (Sandbox Code Playgroud)
并将我的初始化代码放在这里作为临时修复.
有没有人知道为什么使用实体使用默认游戏应用程序代码两次触发sceneDidLoad()?
通常,sceneDidLoad 只会被调用一次。但是,如果发送内存警告,则 UIViewController 会释放其场景,并在视图控制器不可见时将其设置为 nil。下次场景出现时,视图控制器将重新加载场景并再次调用 sceneDidLoad。
您必须假设 sceneDidLoad 可以被多次调用。
实现 didReceiveMemoryWarning 并记录或设置断点以查看发生了什么。
| 归档时间: |
|
| 查看次数: |
1216 次 |
| 最近记录: |