2017-04-01 99 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瞭解詳細的答案。