同时点击图片

时间:2014-12-17 13:21:59

标签: android multi-touch

对于我当前的Android项目,我试图允许多次点击一个(大)图像,这样可以说给你一个观点。到目前为止,我有一个XML格式的onClick设置,一次只能用于一个手指(如果一个手指向下握住图像,则第二个手指不能单击它)。有人可以解释一下我要做什么来启用此功能或指向我相关的代码。

我检查了布局XML,如果有任何直接选项来启用此功能但没有找到任何内容,我也尝试在Google / Stack上搜索此问题,但只得到了#34;捏缩放"答案或答案用不同的编程语言。

谢谢!

1 个答案:

答案 0 :(得分:0)

您必须在视图上设置 OnTouchListener (可能是ImageView)以处理多个触摸。

以下是在视图上实现多点触控的简单说明。

public boolean onTouch(View v, MotionEvent event) {

    int action = MotionEventCompat.getActionMasked(event);
    int pointerIndex = MotionEventCompat.getActionIndex(event);
    int x = (int)MotionEventCompat.getX(event,pointerIndex);
    int y = (int)MotionEventCompat.getY(event,pointerIndex);

    switch(action)
    {
    case MotionEvent.ACTION_DOWN:
        //
        // First finger was touched. Set "pointerIndex" to some value (lets say 0 or -1)
        // Save "pointerIndex" corresponding to this touched object.
        //
        break;
    case MotionEvent.ACTION_POINTER_DOWN:
        //
        // More finger touched when first finger is already touched.
        // Save "pointerIndex" corresponding to this touched object.
        //
        break;
    case MotionEvent.ACTION_MOVE:
        //
        // Finger with "pointerIndex" was moved.
        //
        break;
    case MotionEvent.ACTION_UP:
        //
        // The first touched finger went off.
        //
        break;
    case MotionEvent.ACTION_POINTER_UP:
        //
        // Finger with "pointerIndex" went off (other than first finger)
        //
        break;
    }
    return true;
}
祝你好运。 :)