天天看點

[CATransaction flush] 作用詳解

衆所周知,CATransaction 是核心動畫類中的事務類,負責将圖層樹的修改作為原子更新到渲染樹.其分為隐式事務和顯式事務.我們平時所做的針對layer層的操作都是隐式事務,

如self.view.layer.backgroundColor = [UIColorredColor].CGColor;

顯式事務為運用begin ,commit方法建立使用.顯式事務在同時設定多個圖層的屬性的時候(例如當布局多個圖層的時候),暫時的禁用圖層的行為,或者暫時修改動畫的時間的時候非常有用 .

而[CATransaction flush]的使用則是對事務的處理安排.文檔是這樣解釋flush方法的

翻譯過來就是:送出任何現存隐式事務,直到所有嵌套的顯式事務完成送出實際效果,其本質作用是對事務的處理安排..這可以在lldb調試中友善調用.