顶部提示 先下移出来 再上移出去

int sw = DisplayUtils.getScreenWidth(mContext);
int h = DisplayUtils.dipToPx(mContext, 40);


if (animator == null) {
animator = android.animation.ValueAnimator.ofFloat(100f, 0f, 0f, 0f, 0f, 0f, 0f, 100f);
animator.setDuration(1300);
animator.setInterpolator(new LinearInterpolator());
animator.addListener(new Animator.AnimatorListener() {
@Override
public void onAnimationStart(Animator animation) {

}

@Override
public void onAnimationEnd(Animator animation) {
ViewUtils.setVisibility(mTvUpdateNotice, View.GONE);
}

@Override
public void onAnimationCancel(Animator animation) {
ViewUtils.setVisibility(mTvUpdateNotice, View.GONE);
}

@Override
public void onAnimationRepeat(Animator animation) {

}
});
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator animation) {
float value = (Float) animation.getAnimatedValue();
float x = value / 100;

LogUtils.e("long", "value = " + value + " , x = " + x);

LinearLayout.LayoutParams p = (LinearLayout.LayoutParams) mTvUpdateNotice.getLayoutParams();
p.topMargin = (int) (-1 * h * x);
p.width = (int) (sw * ( 1 - x));
mTvUpdateNotice.setLayoutParams(p);
mTvUpdateNotice.setAlpha((int) (1 - x));

            LogUtils.e("long", "topMargin = " + p.topMargin + ", width = " + p.width);

// mTvUpdateNotice.requestLayout();
}
});

}
animator.start();

转载于:https://www.cnblogs.com/wutianlong/p/9888438.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值