1

我有一个观点(具体来说是 WebView)。在这种情况下,我有类似的东西:

setOnTouchListener(new View.OnTouchListener() {
    public boolean onTouch(View v, MotionEvent event) {
        if (event.getAction() == MotionEvent.ACTION_UP) {
            //user has clicked
        }
    }
});

这会 100% 始终向我保证用户已经点击/单击了视图吗?如果没有,在什么情况下这不能保证我点击?

我想拦截所有用户“点击”。想像“点击”按钮一样“点击”,但只是在移动设备上。想象一下这段代码被不同的设备调用了 1 亿次

4

2 回答 2

2

MotionEvent.ACTION_UP当您从屏幕上抬起手指时。一旦调用了 onTouch,您就可以确定用户已经触摸了一个视图。

于 2013-09-17T23:51:56.490 回答
1

我认为虽然 MotionEvent.ACTION_UP 在触摸结束时并不总是被调用(如此处所述:ACTION_UP not always called?),但假设用户已经触摸了屏幕肯定是安全的。这就是API描述它的方式,IMO:

按下的手势已完成,该动作包含最终释放位置以及自上次向下或移动事件以来的任何中间点。

于 2013-09-17T23:55:52.707 回答