经常看到有些应用里面TextView会有淡入淡出效果,给人一种眼前一亮的感觉,如下图:
这篇文章简单介绍下它的代码实现。
首先,可以先将此动画分解成两部分,即淡入和淡出,淡入的时候,从底部向中心点移动,移动的过程中,文字越变越清晰;
淡出的时候,从中心点向顶部移动,移动过程中,文字越变越模糊。这其中涉及到两个属性:translationY(控件在纵向上的移动距离)、alpha(控件的不透明度)
本章将利用属性动画实现其效果。
首先,看淡出的实现:
privateObjectAnimator mFadeOutObjectAnimator;//由于淡出,是向上移动,坐标为负,这里设定向上移动150个像素
mFadeOutObjectAnimator = ObjectAnimator.ofFloat(mFadeinoutTv, "translationY", 0, -150);//动画执行时间设定为500毫秒
mFadeOutObjectAnimator.setDuration(500);
mFadeOutObjectAnimator.addUpdateListener(newValueAnimator.AnimatorUpdateListener() {
@Overridepublic voidonAnim