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(); //启动动画