Swift SpriteKit SKSpriteNode 的“有时”不显示
Posted
技术标签:
【中文标题】Swift SpriteKit SKSpriteNode 的“有时”不显示【英文标题】:Swift SpriteKit SKSpriteNode's "Sometimes" Don't Show Up 【发布时间】:2015-10-21 01:01:34 【问题描述】:我正在使用 Swift 和 SpriteKit 制作 ios。但是,我的应用程序运行不正常。有时飞船 SKSpriteNodes 没有出现在屏幕上,有时子弹的 SKSpriteNodes 没有出现,有时一切都很好(我在代码的其他地方添加了子弹)。在所有情况下,我都不会在运行之间更改代码。我直接在这个屏幕上启动应用程序,所以我想这可能与这些 SKSpriteNodes 没有足够的时间来初始化有关。有什么想法吗?
【问题讨论】:
【参考方案1】:设置self.ship
的zPosition
,使其位于后台节点的前面。像这样(我会在设置位置后这样做):
self.ship.zPosition = 1.0
您还可以在zPosition
中使用否定词,例如,将self.background
向下删除。将zPosition
视为层(支持小数),数字越大,您的节点就越靠近层堆栈的“顶部”。
【讨论】:
他还可以暂时将所有精灵的不透明度设置为 0.5,以查看是否有任何精灵隐藏在另一个精灵后面。如果他们仍然没有出现,那么他可以确定这与深度无关,并且还有其他问题。 谢谢你一千次。这就是问题所在! @mpkostek 太棒了,很高兴为您提供帮助。以上是关于Swift SpriteKit SKSpriteNode 的“有时”不显示的主要内容,如果未能解决你的问题,请参考以下文章
将 SKSpriteNode 移动 Y - Swift 2 + SpriteKit
SpriteKit 设备方向改变导致 SKLabelNode 变形 Swift