现在,我可以在没有任何动画的情况下通过投掷删除文本视图。你会如何在flings上动画TextViews来显示这个动作?
textView.setOnTouchListener(new OnSwipeTouchListener(this) {
public void onSwipeRight() {
layout.removeView(textView)
}
public void onSwipeLeft() {
layout.removeView(textView);
}
});
每个蓝色矩形框都是文字视图。
答案 0 :(得分:0)
Android视图有ViewPropertyAnimator类,如果您正在寻找一些简单的动画,它将为您解决。
在您的情况下,最简单的方法是在TextView
方法中调用animate()
的{{1}}。
onFling()
虽然,这种动画将在用户触摸发布时触发,因此这可能不是他希望看到的确切行为。
在这种情况下,您可能希望将动画逻辑与boolean isHidden;
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
// ... fling check
float velocity = Math.abs(velocityX / 8000f);
long duration = (long) (100 / velocity); // calculate duration based on velocity
textView.animate().translationX(isHidden ? 0 : 500).alpha(isHidden ? 1 : 0).setDuration(duration).start();
isHidden != isHidden;
}
方法