Событие Android ACTION_DOWN автоматически выполняет событие ACTION_UP через несколько секунд - PullRequest
1 голос
/ 12 сентября 2011

Я создал приложение, в котором пользователь должен касаться изображения в течение примерно 10 секунд.Итак, я зарегистрировал событие ACTION_DOWN.Но это событие автоматически выполняет событие ACTION_UP через несколько секунд, даже если пользователь не поднимает палец вверх.Есть ли решение этой проблемы?Любая помощь будет принята с благодарностью.

1 Ответ

1 голос
/ 27 марта 2012

Я java / android noob, но вот код, который работает для меня:

class HelloOnTouchListener implements OnTouchListener {
    public boolean onTouch(View v, MotionEvent e) {
        handleTouchEvent(e);
        return true;
    }
}

public void handleTouchEvent(MotionEvent e) {
    int eAct = e.getAction(); 
    if (eAct == 0) Log.d("touch", "press");
    else if (eAct == 1) Log.d("touch", "release");
}

А вот код, который не работает (UP запускается дважды, сначала сразу после DOWN, а затем, когда высобственно релиз):

public void handleTouchEvent(MotionEvent e) {
    int eAct = e.getAction();
    switch (eAct) {
        case MotionEvent.ACTION_DOWN: Log.d("touch", "press");
        case MotionEvent.ACTION_UP: Log.d("touch", "release");
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...