AnimatorSet和ObjectAnimator、PropertyValuesHolder参数详解

AnimatorSet混合动画类,可以并联或者串联地播放动画。一般的AnimatorSet会和ObjectAnimator一起使用用于切实的改变视图的属性(普通的Animation不会改变视图的属性,动画播放完毕后视图又恢复原来的属性)。

ImageView            mLargeCircle         = new ImageView(getContext());
PropertyValuesHolder mPvhScaleX           = PropertyValuesHolder.ofFloat("scaleX", 1, 0.8f, 1);


参数"scaleX", 1, 0.8f, 1的意思是在执行动画的时候,mLargeCircle会执行setScaleX(scaleValue),scaleValue的值
从1到0.8f变化再向1变化。
PropertyValuesHolder mPvhScaleY = PropertyValuesHolder. ofFloat ( "scaleY" , 1 , 0.8f , 1 );
PropertyValuesHolder propertyValuesHolder = PropertyValuesHolder.ofFloat("Alpha",0.5f,1.0f);
以此类推这里就是动画执行的时候会调用mLargeCircle.setAlpha();

ObjectAnimator largeCircleAnim = ObjectAnimator.ofPropertyValuesHolder(
        mLargeCircle,mPvhScaleX, mPvhScaleY,propertyValuesHolder);  
这里是系列动画效果和mLargeCircle绑定

mAnim = new AnimatorSet();
mAnim.play(largeCircleAnim);
mAnim.setInterpolator(new AccelerateDecelerateInterpolator());
mAnim.setDuration(500);
mAnim.start();


你可能感兴趣的:(Android,安卓分散知识点)