goback add

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


喜欢0 评分0