UITableView在滚动视图时停止更新内容?

Cor*_*ith 4 uitableview nstimer ios

我有一个UITableView,工作正常,更新很好.我也有一个计时器,更新每个UITableView的标签和进度视图,当用户滚动表查看停止更新/于UITableView中刷新内容(标签和进度视图),直到他们完成滚动.

除了没有更新的内容,我发现当用户滚动时整个应用程序挂起.我有两个计时器,我在两者中都放了print语句,但是在用户滚动时都没有打印.我无法找到一个迅速或迅速的解决方案.

mac*_*die 7

这与Swift完全无关.

您可能已安排NSTimer使用默认方法,这会导致将其添加到runloop中,使其在滚动时不会触发.您需要使用NSRunLoopCommonModes模式将其添加到主runloop .

例如

let timer = NSTimer(timeInterval: 1.0, target: self, selector: #selector(update), userInfo: nil, repeats: false)
NSRunloop.mainRunLoop().addTimer(timer, forMode: NSRunloopCommonModes)
Run Code Online (Sandbox Code Playgroud)