2017-04-01 73 views
2

试图重现this article中描述的行为。逐行。一切正常,但最后一步...CADisplayLink捕捉延迟动画

问题是:我在调用UIView.animate之前取消暂停CADisplayLink,并期望在动画期间未调用CADisplayLink调用主线程上的附加选择器。它确实有效,但它开始以半秒的延迟呼叫连接的选择器。

有什么建议吗?

enter image description here

+0

不,在设备上测试。模拟器仅用于通过QuickTime制作gif。 – iWheelBuy

+0

好的,我会试试!感谢(: – iWheelBuy

+0

我找到了一个解决方案,用RunLoopMode.commonModes替换RunLoopMode.defaultRunLoopMode解决了这个问题,但我很难理解这两种模式之间的区别以及它们为什么会产生如此不同的影响......): – iWheelBuy

回答

1

看来,你选择了一个错误的RunLoopMode。使用RunLoopMode.commonModes它就像一个魅力。请看here了解详细的答案。