android动画 对fillBefore 和 fillAfter的理解
3037 点击·0 回帖
![]() | ![]() | |
![]() | fillBefore是指动画结束时画面停留在第一帧,fillAfter是指动画结束是画面停留在最后一帧。 最关键的问题是,这2个参数不能在</alpha>,</scale>,</translate>,</rotate>中设置,这是没有用的,必须 1)在动画xml文件的</set>节点中设置, [html] <?xml version="1.0" encoding="utf-8"?> <set xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:fillEnabled="true" Android:fillAfter="true"> <translate Android:interpolator="@Android:anim/cycle_interpolator" Android:fromXDelta="0" Android:toXDelta="200" Android:fromYDelta="0" Android:toYDelta="-50" Android:duration="10000" > </translate> </set> <?xml version="1.0" encoding="utf-8"?> <set xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:fillEnabled="true" Android:fillAfter="true"> <translate Android:interpolator="@Android:anim/cycle_interpolator" Android:fromXDelta="0" Android:toXDelta="200" Android:fromYDelta="0" Android:toYDelta="-50" Android:duration="10000" > </translate> </set> 或者 2)在java代码中设置。 [java] setFillAfter(true); setFillBefore(false); | |
![]() | ![]() |