编辑:好的,所以即使有一个空的SpriteKit场景也会发生这种情况!这可能有什么问题?为什么iOS需要2秒才能显示SpriteKit场景?
编辑2:我第一次点击标签栏以显示带有SKScene的视图控制器,它立即显示,但每次下次我尝试导航回此视图控制器时,它将花费2秒钟显示!
我的应用程序中有一个标签栏控制器,有多个不同的viewControllers.
其中一个包含一个SpriteKit场景,有几个节点,其中5个节点,没有太重.
在模拟器中一切都很好,但是当在设备上进行测试时,我注意到在使用SpriteKit场景更改为ViewController时,有时会出现大停顿(大约2秒!).
其他时间没有停止,立即显示视图.
现在,我知道必须有一些我在这里做错了,因为iOS绝对应该能够解决这个问题.
这是viewController里面的viewDidLoad函数和spriteKit场景:
override func viewDidLoad() {
super.viewDidLoad()
if let scene = MyScene(fileNamed:"MyScene") {
// Configure the view.
scene.switchView = switchView
let parentNode = scene.childNodeWithName("WholeObject") as! SKSpriteNode
let contentNode = scene.childNodeWithName("CenterNode") as! SKSpriteNode
addPhotoToFrame(contentNode, photoName: "woman", maskName: "circleMask")
let node1 = parentNode.childNodeWithName("node1") as! SKSpriteNode
addPhotoToFrame(zealNode1, photoName: "motherCircleImage", maskName: "circleMaskSmall")
let node2 = parentNode.childNodeWithName("node2") as! SKSpriteNode
addPhotoToFrame(zealNode2, photoName: "hairstylistCircleImage", maskName: "circleMaskSmall")
let node3 = parentNode.childNodeWithName("node3") as! SKSpriteNode
addPhotoToFrame(zealNode3, photoName: "dietCircleImage", maskName: "circleMaskSmall")
let skView = self.view …Run Code Online (Sandbox Code Playgroud)