我将两个SKSpriteNodes作为子元素添加到另一个SKSpriteNode。代码如下所示:SKSpriteNodeChild在错误的位置
let parentNode = SKSpriteNode(imageNamed: "ParentImage")
parentNode.position = CGPointMake(0,0)
parentNode.zPosition = 0
let child1 = SKSpriteNode(imageNamed: "ChildImage1")
child1.position = CGPointMake(0,0)
parentNode.addChild(child1)
child1.zPosition = -10
let child2 = SKSpriteNode(imageNamed: "ChildImage2")
child2.position = CGPointMake(0,0)
parentNode.addChild(child2)
child2.zPosition = 10
当我parentNode添加到我的场景,在z平面精灵的顺序,从后到前是
- parentNode
- child1
- 的child2
有时,预期
- child1
- parentNode
- 的child2
是否当一个孩子是parentNode低于z位置属性获得过统治?有没有人遇到过这样的错误或知道修复?
在GameViewController,skView.ignoresSiblingOrder = true
当我将它设置为false
,我得到的第一个行为(parentNode,child1,的child2)每次。
@ShaneOSeasnain我试着运行你的代码几次(模拟器和设备),我不能产生你在说什么(我总是得到child1,parentNode,child2)。我在iOS 9.1和Xcode 7.1.1上 – Whirlwind