Android-属性动画

来源:互联网 发布:七雄战记更新网络错误 编辑:程序博客网 时间:2024/05/21 14:09

1) 属性动画例子:

代码实现:

public void onClick(View v) {    v.animate().rotation(360).setDuration(1000).start();}

XML实现:

@Overridepublic void onClick(View v) {ObjectAnimator animator = (ObjectAnimator) AnimatorInflater.loadAnimator(this, R.animator.animate_me);animator.setTarget(v);animator.start();}

animate_me.xml

<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"android:duration="1000"android:propertyName="rotation"android:valueFrom="0"android:valueTo="360"></objectAnimator>

2) 动画集合的使用
代码实现:

AnimatorSet set = new AnimatorSet();set.setDuration(1000);set.playSequentially(        ObjectAnimator.ofFloat(v,"translationX",0,200),        ObjectAnimator.ofFloat(v,"translationY",0,200),        ObjectAnimator.ofFloat(v,"translationY",200,0),        ObjectAnimator.ofFloat(v,"translationX",200,0)        );set.start();

XML实现:
调用xml文件:

AnimatorSet animator = (AnimatorSet) AnimatorInflater.loadAnimator(this, R.animator.animate_me);animator.setTarget(v);animator.start();

R.animator.animate_me.xml文件:

<set xmlns:android="http://schemas.android.com/apk/res/android" android:ordering="sequentially">    <objectAnimator android:propertyName="translationX" android:valueFrom="0" android:valueTo="200" android:duration="1000"/>    <objectAnimator android:propertyName="translationY" android:valueFrom="0" android:valueTo="200" android:duration="1000"/>    <objectAnimator android:propertyName="translationY" android:valueFrom="200" android:valueTo="0" android:duration="1000"/>    <objectAnimator android:propertyName="translationX" android:valueFrom="200" android:valueTo="0" android:duration="1000"/></set>
0 0
原创粉丝点击