GestureDetector с помощью onItemLongclick - PullRequest
2 голосов
/ 11 октября 2011

Как я могу интегрировать GestureDetector с onItemLongClick?

У меня есть GridView, содержащий три изображения.Когда я касаюсь первого изображения, я хочу отобразить сообщение Toast.Когда я убираю палец с экрана, я хочу отобразить второе сообщение «Тост».

Я знаю, что GestureDetector использует MotionEvent, но onItemLongClick - нет.Но в этом случае мне нужно будет отслеживать идентификатор позиции изображения в сетке, поэтому невозможно реализовать внутри onTouch ()?

1 Ответ

0 голосов
/ 14 октября 2011

Вы можете отслеживать движение курсора, будь то прикосновение к экрану или перемещение TrackBall, используя этот класс, и если он переходит в следующее изображение, вы можете обработать это событие. Вот пример, взятый из примеров sdk:

    @Override public boolean onTouchEvent(MotionEvent event) {
        int action = event.getActionMasked();
        if (action != MotionEvent.ACTION_UP && action != MotionEvent.ACTION_CANCEL) {
            int N = event.getHistorySize();
            int P = event.getPointerCount();
            for (int i = 0; i < N; i++) {
                for (int j = 0; j < P; j++) {
                    mCurX = event.getHistoricalX(j, i);
                    mCurY = event.getHistoricalY(j, i);
                    drawPoint(mCurX, mCurY,
                            event.getHistoricalPressure(j, i),
                            event.getHistoricalTouchMajor(j, i));
                }
            }
            for (int j = 0; j < P; j++) {
                mCurX = event.getX(j);
                mCurY = event.getY(j);
                drawPoint(mCurX, mCurY, event.getPressure(j), event.getTouchMajor(j));
            }
        }
        return true;
    }

Вы можете прочитать больше и посмотреть файл в своем SDK по адресу C: \ YourInstallDir \ android-sdk \ samples \ android-10 \ ApiDemos \ src \ com \ example \ android \ apis \ graphics \ TouchPaint.java или просто выполнить поиск целые файлы примеров для MotionEvent содержат еще несколько применений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...