Android 动画fillAfter和fillBefore

时间:2023-03-08 23:52:59
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里了,也不管用啊。Android 动画fillAfter和fillBefore

亲测:

停留在最后一帧:如下三行要同时设置

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);