Android 中点击、触摸和手势的区别?

Difference between Click, Touch and Gesture in Android?

我是 Android 开发的新手,我不太清楚 Android 中点击、触摸和手势 类 之间的区别。 是对其他的泛化吗?

如果您谈论的是特定的 classes,最好包含完全限定名称以避免歧义。

Click 非常通用,所以我假设您在谈论 android.view.View.OnClickListener。这是您的小部件 class 可以实现的接口,以使用回调方法 onClick()。当您按下该视图(按钮)时,将执行 onClick() 方法中的任何代码。

button.setOnClickListener(new View.OnClickListener() {
             public void onClick(View v) {
                 // Perform action on click
             }
         });

触摸 android.view.View.OnTouchListener onTouchListener 是一个接口,它公开了 onTouch() 回调方法并使您可以访问 android.view.MotionEvent 成员,例如 ACTION_BUTTON_RELEASE。 MotionEvent class 对于运动相关行为非常强大。

以下示例来自线程

imageButton.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
    if(event.getAction() == MotionEvent.ACTION_UP){

        // Do what you want
        return true;
    }
    return false;
}

});

手势 android.view.GestureDetector.OnGestureListener 此 class 用于获取用户如何用您的 UI 手势。在 Android 开发站点的手势部分 http://developer.android.com/training/gestures/detector.html 中已经有很多信息。 使用此 class 的一个示例是,如果您用手指在键盘上流畅地书写,您需要聆听触摸、移动和加速度。