我有一个视图(具体地说是WebView)。在这个观点下,我有这样的东西:
setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
//user has clicked
}
}
});
这个 100% 会始终向我保证用户已点击/单击视图吗?如果不是,在什么情况下这不能保证我点击??
我想拦截所有用户的"点击"。 把"点击"想象成"点击"按钮,但只是在移动设备上。想象一下,这段代码被不同的设备调用了1亿次
MotionEvent.ACTION_UP
是当你从屏幕上抬起手指时。您可以确保用户在调用 onTouch 后触摸了视图。
虽然MotionEvent.ACTION_UP在触摸结束时并不总是被调用(如这里提到的:ACTION_UP并不总是被调用?),但假设用户已经触摸了屏幕当然是安全的。 这就是 API 的描述方式,IMO:
按下的手势已完成,动作包含最终释放 位置以及自上次下降以来的任何中间点或 移动事件。