【发布时间】:2017-10-20 09:35:55
【问题描述】:
我正在 xcode 中创建游戏。获胜者将获得负分或 0。一切顺利,但现在我希望将这些负分添加到他/她的对手身上。我使用了这段代码:
while (activePlayer.score < 0) {
DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
self.activePlayer.score += 1
self.activePlayer.scoreLabel.text = String (self.activePlayer.score)
self.notActivePlayer.score += 1
self.notActivePlayer.scoreLabel.text = String (self.notActivePlayer.score)
}
}
当我现在运行模拟器时,它会在这部分冻结。最糟糕的是我的整个 iMac 死机了。它变得非常缓慢,我不得不等待大约 10 分钟才能关闭模拟器并恢复一些速度。
我的简单结论是这段代码是错误的。但为什么? 我想让玩家看到分数的变化,这就是为什么标签文本会在每个分数添加到分数后更新。
【问题讨论】:
标签: swift sprite-kit ios-simulator