我有点新鲜,但我真的很开心想出这些东西。希望你不介意帮助我,因为我被卡住了。
这是我的OnTouchListener。它用于显示计时器,如果有人移动显示时间的视图,我希望计时器关闭。
我需要它以便视图移动到某个点然后它实现。否则它会与点击手势有点混淆。我要设置它,以便定时器在点击时暂停。
问题是。我将视图设置为“GONE”,这样在移动后你就不会看到它,但我仍然需要视图返回原来的位置,这样当下一个计时器再次启动时,它将被重置。
//setOnTouchListener Here
zoneATimerText.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
dX = view.getX() - event.getRawX();
dY = view.getY() - event.getRawY();
break;
case MotionEvent.ACTION_MOVE:
destroyCountDownTimer();
view.animate()
.x(event.getRawX() + dX)
.y(event.getRawY() + dY)
.setDuration(0)
.start();
Log.v("on move", "you're moving");
break;
default:
return true;
}
return true;
}
});
答案 0 :(得分:0)
保存视图的原始位置,即x,y在类级别,当动画完成时,隐藏视图,当时可见,只需使用方法重置视图的位置位置(view.setX() ,view.setY())。