Phu*_* Ly 31 objective-c sprite-kit skspritenode
如何将SKSpriteNode带到所有其他节点的前面?
使用UIView,我可以使用bringSubviewToFront在其他视图前面显示uiview.
Fog*_*ter 52
你不能"把它带到前面",但你可以改变zPosition
它.
zPosition
节点越高,呈现的越晚.
因此,如果您有三个节点,分别zPositions
为-1,0和1,那么-1将出现在后面.然后是0.然后1将出现在前面.
如果它们都使用默认值zPosition
0.0,那么它们将按照它们出现在父节点的children数组中的顺序呈现.
您可以在文档中阅读所有内容.
https://developer.apple.com/documentation/spritekit/sknode
环球银行金融电信协会4
\n我通常创建枚举来建立 zPositions,以便我可以简单地管理不同的层:
enum ZPositions: Int {\n case background\n case foreground\n case player\n case otherNodes\n}\n
Run Code Online (Sandbox Code Playgroud)\n因此,当你设置一个新项目时,你可以这样简单地给它 zPosition:
\nbutton.zPosition = CGFloat(ZPosition.otherNodes.rawValue)\n
Run Code Online (Sandbox Code Playgroud)\n(按钮现在具有最高的 zPosition)
\n