【发布时间】:2015-01-09 03:10:35
【问题描述】:
当我的视图处于按下状态并且触摸事件的位置离开视图时,我希望视图得到通知。我还想在触摸位置在仍处于按下状态时重新进入我的视图时收到通知。
我的视图扩展了View,目前实现了这个方法:
public boolean onTouchEvent(MotionEvent event) {
boolean result = gestureDetector.onTouchEvent(event);
if (!result) {
if (event.getAction() == MotionEvent.ACTION_UP) {
animate().scaleX(1).scaleY(1).setDuration(100).start();
performClick();
}
}
return result;
}
gestureDetector 引用该类的一个实例:
class GestureListener extends GestureDetector.SimpleOnGestureListener {
public boolean onDown(MotionEvent e) {
animate().scaleX(0.9f).scaleY(0.9f).setDuration(100).start();
return true;
}
}
这工作得很好,但是当在我的视野之外按下并释放触摸时,MotionEvent.ACTION_UP 仍然会被触发(因此performClick() 也会被触发),这不是我正在寻找的行为。我在MotionEvent 中尝试了许多其他操作,但没有这样做。
有什么想法吗?
【问题讨论】:
标签: android view gesture pressed