IgorV
@IgorV

Android. Слишком часто приходят onTouchEvent

Написал небольшую игрушку. И всё бы хорошо, но при нажатии на экран начинает подтормаживать.
Никак не могу справиться с этой напастью.
Не помогает ни засыпание в обработчике, ни принудительный выход, если не прошло достаточно времени, которые советуют на буржуйских форумах.
Вот сама игрушка в которой можно наблюдать эффект во всей красе:
market.android.com/details?id=y.games.op_volcano
image
  • Вопрос задан
  • 3528 просмотров
Пригласить эксперта
Ответы на вопрос 3
SabMakc
@SabMakc
Помнится, когда баловался с разработкой под Android, от этого помог перенос обработки нажатия в метод показа.
Т.е. в обработчике нажатия просто ставился флаг было нажатие / не было + координаты.
А в методе показа уже и анализировал что, где и как было нажато.
Ответ написан
kalbas
@kalbas
OnTouchEvent приходит на любое событие касания экрана. То есть если вы перехватываете touch event, но не выбираете его конкретный тип, обрабатывается touch down, touch move и touch up. Причем touch move приходит овер9000 раз, пока вы прижали палец к экрану и шевелите им.

Или я не о том? Вообще в таких случаях хорошо бы прилагать код, а то непонятно ничего.
Ответ написан
@YoungSkipper
Мне в свое время (это были времена G1) помог Thread.sleep(50) внутри onTouchEvent.
Не то что бы сильно помог, на скажем так падение фпс при касании пальцем экрана уменьшилось раза в два.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы