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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM