我創建了一個UIView和一些圖層。我已經將這些圖層組織到超視圖 - 子視圖層次結構中,其中包含UIView圖層中的根,添加了一些手勢識別器,並且我試圖從手勢識別器(設置邊界和位置確定)處理層的幾何圖形。我使用隱式動畫和CATransactions。沒有使用明確的動畫。CoreAnimation抖動
如果我創建持續時間爲0的CATransaction,實際結果已經足夠了。但是,如果將持續時間設置爲0.2,我會得到一些奇怪的結果:由於事件發生得不是很快,並且以前的事務有時間需要在下次啓動之前完成一切都正常(例如點擊),但如果沒有足夠的時間(例如在捏或平底鍋上),被調整大小的圖層開始打亂。在視覺上,它看起來像動畫回滾到初始點,並重新開始新的值。
我看不出有任何理由。我試圖在-[UIView layoutSubviews]
中執行佈局,並在手勢識別器處理程序中調用setNeedsDisplay
。我也試圖將這個邏輯分解成單獨的方法,但它沒有幫助。
我再說一遍,我只使用隱式動畫。而我想知道的是爲什麼會發生(但不是如何解決)。
任何線索?
我覺得這個問題的措辭非常糟糕.. – 2012-03-07 23:51:40