У меня есть SurfaceView, который использует холст для рендеринга на основе сенсорных событий. Активность также использует режим погружения, чтобы сделать ее полноэкранной.
Проблема в том, что когда пользователь проводит пальцем от верхней части экрана, чтобы выйти из режима погружения, этот жест воспринимается холстом.
Как избежать обработки этих событий касания на холсте?
Класс SurfaceView
public class PEQSurfaceView extends SurfaceView implements
SurfaceHolder.Callback
{
@Override
public void surfaceCreated(SurfaceHolder holder)
{
// make the GamePanel focusable so it can handle events
requestFocus();
setFocusable(true);
setFocusableInTouchMode(true);
}
@Override
public boolean onTouchEvent(MotionEvent event)
{...}
Макет также имеет некоторые стандартные элементы управления сбоку, и я заметил, что они также затронуты. т.е. индикаторы прогресса будут прогрессировать, если их коснется свайп вниз