cabasicanimation fillmode和removedoncompletion
1 rotationanimation.removedoncompletion = no;
2 3 rotationanimation.fillmode = kcafillmodeforwards;
fillmode的作用就是決定當前物件過了非active時間段的行為. 比如動畫開始之前,動畫結束之後。如果是乙個動畫caanimation,則需要將其removedoncompletion設定為no,要不然fillmode不起作用.
下面來講各個fillmode的意義
kcafillmoderemoved 這個是預設值,也就是說當動畫開始前和動畫結束後,動畫對layer都沒有影響,動畫結束後,layer會恢復到之前的狀態
kcafillmodeforwards 當動畫結束後,layer會一直保持著動畫最後的狀態
kcafillmodebackwards 這個和kcafillmodeforwards是相對的,就是在動畫開始前,你只要將動畫加入了乙個layer,layer便立即進入動畫的初始狀態並等待動畫開始.你可以這樣設定測試**,將乙個動畫加入乙個layer的時候延遲5秒執行.然後就會發現在動畫沒有開始的時候,只要動畫被加入了layer,layer便處於動畫初始狀態
kcafillmodeboth 理解了上面兩個,這個就很好理解了,這個其實就是上面兩個的合成.動畫加入後開始之前,layer便處於動畫初始狀態,動畫結束後layer保持動畫最後的狀態.
animate.removedoncompletion = no;
animate.fillmode = kcafillmodeboth;
點選回到頂部的緩衝動畫
動畫函式 function animate obj,target,callback 呼叫的時候 callback 先清除以前的定時器,只保留當前的乙個定時器執行 clearinterval obj.timer obj.timer setinterval function callback callb...