iOS:当我们滚动任何视图时,计时器不会 运行

iOS: Timer doesn't run when we are scrolling any view

我使用计时器每 0.025 秒更新一次进度条,但是当我滚动我的 collectionView 或 tableView 或任何滚动视图时,我的计时器没有 运行 导致我的进度条卡住了一会儿直到我结束我的滚动动作。我将 CADisplayLink 用作计时器,但它仍然具有相同的行为。解决此问题的最佳方法是什么?我看到 iTunes 预览歌曲中的循环进度播放按钮即使在我滚动视图时仍在更新,所以我相信这个问题可以解决。

我已经弄明白我错过了什么。

只需在您安排计时器后添加此代码,当您滚动 tableView 或 collectionView 时它仍然有效

RunLoop.current.add(self.timer!, forMode: RunLoopMode.commonModes)