UIScrollView 滚动时 UISlider 暂停

UISlider Pauses when UIScrollView is Scrolled

在我的 iOS 应用程序中,我有一个 UISlider 添加到我的应用程序的 window。

var window = UIApplication.shared.keyWindow!
window.insertSubview(slider, at: 0)
window.bringSubview(toFront: slider)

这个 UISlider 每 0.1 秒更新一次(它显示视频的当前长度并由 Timer 更新)我的一个 ViewControllers 包含一个 UIScrollView 并且当 UIScrollView 滚动时,UISlider 暂停更新。当用户完成滚动时,UISlider 再次开始正常更新。我该如何解决这个问题?

问题是 UIScrollView 的滚动导致 NSTimer 的暂停。所以,这与你的 UISlider 无关。

要解决此问题,请在初始化后 NSTimer 将定时器添加到 RunLoop.main 模式 RunLoopMode.commonModes

RunLoop.main.add(yourTimer, forMode: RunLoopMode.commonModes)