为了账号安全,请及时绑定邮箱和手机立即绑定

正在回答

1 回答

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 回复 有任何疑惑可以回复我~
#1

charspan 提问者

非常感谢!
2016-05-25 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
浅谈Android动画
  • 参与学习       55245    人
  • 解答问题       34    个

本课程带领学生学习Android动画,实现各种炫酷动画效果

进入课程
意见反馈 帮助中心 APP下载
官方微信