消失,我寫了一個名爲updateLabel隨着時間的推移來算我的收集硬幣的功能。我使用NSTimer調用該函數來獲得增加計數的效果。SKLabelNode文字使用的是iOS 7.1
一切的偉大工程,使用的是iOS 8,但只要我打電話使用的是iOS 7.1我的標籤功能只是變成空白......如果我打印出來的Label.text我得到正確的號碼,但它只是不顯示。即使是聲音「coinSound」的作品。
scoreLabel = SKLabelNode()
scoreLabel.text = "0"
self.addChild(scoreLabel) // shows up and works with "0"
self.timer = NSTimer.scheduledTimerWithTimeInterval(0.1, target: self.self, selector: "updateLabel", userInfo: nil, repeats: true)
func updateLabel() {
var score:Int = coinsCollected
var current:Int = self.scoreLabel.text.toInt()!
if (current < score) {
current += 1
scoreLabel.text = String(current)
println("current: \(current) , labelText: \(scoreLabel.text)")
self.runAction(coinSound)
} else {
timer.invalidate()
}
}
感謝您的幫助
不要使用NSTimer! http://stackoverflow.com/a/23978854/201863 可能不是你的問題的來源,但我會修復它。 – LearnCocos2D 2014-10-08 12:52:27
感謝您的信息。想到這個,最近試了一下。沒有解決我的問題後,我剛恢復我的舊NSTimer版本。 我一定會再次切換到動作。究竟是什麼好處?速度更快嗎?更高效? – MikeB 2014-10-08 16:10:49
它在上面的鏈接中解釋過 – LearnCocos2D 2014-10-08 18:45:51