仿炫酷头条小视频拖拽动画(33)



final

 

float

 endScaleY = (

float

) mOriginViewRealHeight / getHeight();

...

//省略相关属性动画初始化,以下是动画回调相关代码



float

 value = (

float

) animation.getAnimatedValue();

setScaleX(startScaleX + value * (endScaleX - startScaleX));

setScaleY(startScaleY + value * (endScaleY - startScaleY));

setTranslationX(startTransitionX + value * (mOriginViewX - startTransitionX) - value * (getWidth() - mOriginViewVisibleWidth) / 

2.0F

);

setTranslationY(startTransitionY - value * (startTransitionY - mOriginViewY) - value * (getHeight() - mOriginViewRealHeight) - (topOutOfBound ? value * (mOriginViewRealHeight - mOriginViewVisibleHeight) :