今天在做項目的時候,項目使用的是xib做的,頁面中需要有個動畫效果,使用UIView動畫如下圖:
想要改變視圖的寬度來實現動畫效果,將這條約束拖到ViewController成為屬性
使用如下方法,發現不能進行動畫效果:
但是發現沒有相關的動畫效果。最后發現使用xib動畫和普通的動畫不太一樣,需要如下操作才能成功實現動畫:
兩個重要的注意事項:
您需要調用 layoutIfNeeded 動畫塊內。蘋果公司其實建議你稱之為一次之前要確保所有掛起的布局操作已完成的動畫塊
您需要調用它專門在父視圖上 (例如 self.view ),不能在子視圖具有附加到它的約束。這樣做將更新所有約束視圖,包括動畫可能會認為,你改變了的約束約束其他視圖 (如視圖 B 附加到底部的視圖 A 和您剛剛更改視圖的頂部偏移量和你想要使用它進行動畫處理的視圖 B)
以上這篇iOS使用xib手動實現動畫效果的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。
新聞熱點
疑難解答