灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2337回复:0

android动画 对fillBefore 和 fillAfter的理解

楼主#
更多 发布于:2012-09-06 13:44

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
游客

返回顶部