TextView动画并删除

时间:2015-11-29 07:54:25

标签: android

当我在TextView上向右滑动时,我想启动动画并将其删除,但TextView正在被移除而没有动画。关于如何解决这个问题的任何想法,以及为什么这不起作用?谢谢。

public void onSwipeRight() {
    textview.animate().translationX(500).alpha(0).setDuration(150).start();
    linearlayout.removeView(textview);
}

1 个答案:

答案 0 :(得分:2)

在删除视图之前,您需要等待动画完成:

textview.animate()
    .translationX(500)
    .alpha(0)
    .setDuration(150)
    .setListener(new AnimatorListenerAdapter() {
        @Override
        public void onAnimationEnd(Animator animation) {
            linearlayout.removeView(textview);
        }
    })
    .start();

注意:由于alpha(int)deprecated,您需要使用:

textview.animate()
    .translationX(500)
    .alpha(0f) //float value
    .setDuration(150)
    .setListener(new AnimatorListenerAdapter() {
        @Override
        public void onAnimationEnd(Animator animation) {
            linearlayout.removeView(textview);
        }
    })
    .start();