Android 動畫fillAfter和fillBefore
fillBefore是指動畫結束時畫面停留在此動畫的第一幀;
fillAfter是指動畫結束是畫面停留在此動畫的最後一幀。
Java代碼設置如下:
/*****動畫結束時,停留在最後一幀*********
setFillAfter(true);
setFillBefore(false);
/*****動畫結束時,停留在第一幀*********
setFillAfter(false);
setFillBefore(true);
xml設置如下:
/******動畫結束時,停留在最後一幀**********
<set Android:fillAfter="true" android:fillBefore="false">
/******動畫結束時,停留在第一幀**********
<set android:fillAfter="false" android:fillBefore="true">
PS:xml設置在scale標簽裏面設置是無效的,註意是set標簽
評論
2 樓 jayaaaiii 2012-03-15 引用 用這兩個屬性前要先 把 設 android:fillEnabled="true" 這樣才有效果 1 樓 tonyzzp 2011-10-26 引用 我寫在set裏了,也不管用啊。
親測:
停留在最後一幀:如下三行要同時設置
final Animation mGridViewAnim = AnimationUtils.loadAnimation(this, enterAnim ? R.anim.item_anim_in : R.anim.item_anim_out);
mGridViewAnim.setFillEnabled(true);
mGridViewAnim.setFillAfter(true);
mGridViewAnim.setFillBefore(false);
mGridViewAnim.setDuration(3000);
Android 動畫fillAfter和fillBefore