//渐入渐出<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"android:propertyName="alpha"//渐入渐出 此属性必须是被添加动画的view上有对应set方法的属性android:valueFrom="0"android:valueTo="1"android:valueType="floatType"//value type也是对应的view set方法中接收的属性android:duration="3000"/>//水平移动<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"android:propertyName="translationX"//水平移动android:valueFrom="0"android:valueTo="100"android:valueType="floatType"android:repeatCount="1" //property animation 中移动之后不能回来 需要设置重复属性android:repeatMode="reverse"android:duration="3000"/>
Java代码:
//利用 AnimatorInflater.loadAnimator方法传入动画,创建ObjectAnimator对象ObjectAnimator a= (ObjectAnimator) AnimatorInflater.loadAnimator(this,R.animator.object02);//指定viewa.setTarget(img);//启动动画a.start();//不使用xml配置文件,Java代码实现方式ObjectAnimator oa= ObjectAnimator.ofFloat(img, "alpha", 0,1);oa.start();
Property Animation 集合使用:
xml代码:
<set xmlns:android="http://schemas.android.com/apk/res/android"android:ordering="sequentially" //ordering set特有属性 可以设置动画同时执行或者顺序执行><objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"android:propertyName="alpha"android:valueFrom="0"android:valueTo="1"android:valueType="floatType"android:duration="3000"/><objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"android:propertyName="translationX"android:valueFrom="0"android:valueTo="100"android:valueType="floatType"android:repeatCount="1"android:repeatMode="reverse"android:duration="3000"/></set>
Java 代码:
//构建AnimatorSet对象 借助AnimatorInflater加载资源文件AnimatorSet as =(AnimatorSet) AnimatorInflater.loadAnimator(this,R.animator.set);//给动画指定viewas.setTarget(img);//启动动画as.start();//不使用xml配置文件,Java代码实现方式ObjectAnimator o1= ObjectAnimator.ofFloat(btn, "alpha", 0,1);o1.setDuration(3000);ObjectAnimator o2= ObjectAnimator.ofFloat(img, "translationX", 0,50);o1.setDuration(3000);AnimatorSet as = new AnimatorSet();//创建集合as.playTogether(o1,o2);//设置同时运动as.start(); //启动动画
本文详细介绍了Android中的属性动画(ObjectAnimator),包括渐入渐出效果、水平移动等常见动画的实现方法。不仅提供了XML配置示例,还展示了如何用Java代码来实现同样的效果,并介绍了如何组合多个动画。
187

被折叠的 条评论
为什么被折叠?



