我有一个复杂的计算表,可以在一年中的每一天循环。在每一天的循环结束时,我想更新屏幕。这些都是myLabel.text输出。 view.setNeedsDisplay()无法正常工作。我需要在外部调用它还是使用别的东西? E.g。
for var day = 1; day < 366; day++ {
dayLabel.text = String(format: "%i", day)
view.setNeedsDisplay()
}
答案 0 :(得分:1)
从上面的评论讨论中我们认为只需要将标签更改强制转换为主线程。在swift:
dispatch_async(dispatch_get_main_queue()) {
dayLabel.text = String(format: "%i", day)
}
或者使用更多的Swift表示法:
for day in 1...365 {
dispatch_async(dispatch_get_main_queue()) {
dayLabel.text = "\(day)"
}
}