如何在滚动时更新计时器上的 UITableView



我的问题解释起来非常复杂,所以我会尽力解释它。

我正在使用TableView做一个快速的应用程序。在这个TableView中,我有一些数据存储在本地(字典,数组,var,...(。 因此,在我的 TableView 中,我每 0.01 秒刷新一次这些数据。然后,当我滚动我的 TableView 时,此刷新已停止,我不想要它。我想要"继续刷新"。

有人可以解释我怎么做吗?我在StackOverflow上搜索,最多的答案是:线程。 我理解 C 语言中的 Thread,但在 Swift 中对我来说非常模糊。 如果你有一个在 Swift 中训练多线程的练习,你可以发布它!

谢谢你的时间。

PS:我可以发布一些代码,但我认为对于我的问题来说,这不是真的必要。

编辑:

有计时器和更新的代码

override func viewDidLoad() {
timer = Timer.scheduledTimer(timeInterval: 0.01, target: self, 
selector:#selector(ViewController.updateTimer), userInfo: nil, 
repeats: true)
}
func updateTimer () {
var j = 0
for _ in rows {
if (rows[j]["Activ"] as! Bool == true ) {
rows[j]["timer"] = (rows[j]["timer"] as! Double + 0.01) as AnyObject
}
j += 1
}
myTableView.reloadData()
}

所以,发生这种情况是因为Timer与在UITableView中滚动相同的DispatchQueue工作。例如,您可以使用 AsyncTimer 来解决此问题。

最新更新