Как включить мультитач для перетаскивания событий - PullRequest
2 голосов
/ 15 февраля 2011

Как включить поддержку мультитач для приложения, я хочу, чтобы два пользователя касались экрана и отправляли события перетаскивания для приложения.

У меня есть этот код на моем компоненте

public boolean onTouchEvent(MotionEvent evt) {
        if (evt.getY() > 612) {
            east.notifyMotionEvent(evt);
            south.notifyMotionEvent(evt);
        } else {
            weast.notifyMotionEvent(evt);
            north.notifyMotionEvent(evt);
        }

        return true;
}

Но на него отправляется только одно событие перетаскивания.

Мой код для поддержки теперь

        for (int i = 0; i < evt.getPointerCount(); i++) {
            float y = evt.getY(i);
            if (y > 612) {
                eastPad.notifyMotionEvent(evt.getX(i), evt.getY(i));
                southPad.notifyMotionEvent(evt.getX(i), evt.getY(i));
            } else {
                weastPad.notifyMotionEvent(evt.getX(i), evt.getY(i));
                northPad.notifyMotionEvent(evt.getX(i), evt.getY(i));
            }
        }

1 Ответ

5 голосов
/ 15 февраля 2011

Это включено в вашем файле AndroidManifest.xml.

 <uses-feature android:name="android.hardware.touchscreen.multitouch"
               android:required="true" />

Дополнительная информация: http://developer.android.com/guide/topics/manifest/uses-feature-element.html

...