Los gestos no funcionan cuando se utiliza DrawerLayout en la aplicación para Android

Tengo una aplicación de Android con una sola actividad. Esta actividad utiliza esta disposición:

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent"> <!-- The main content view --> <FrameLayout android:id="@+id/content_frame" android:layout_width="match_parent" android:layout_height="match_parent" /> <!-- The navigation drawer --> <ListView android:id="@+id/left_drawer" android:layout_width="240dp" android:layout_height="match_parent" android:layout_gravity="start" android:choiceMode="singleChoice" android:divider="@android:color/transparent" android:dividerHeight="0dp" android:background="#111"/> </android.support.v4.widget.DrawerLayout> 

Entonces, en mi fuente tengo dos detectores de gestos definidos en el constructor:

 mDetector = new GestureDetectorCompat(this, new CustomGestureListener()); mScaleDetector = new ScaleGestureDetector(this, new CustomScaleGestureListener()); 

Y estoy anulando onTouchEvent de esta manera:

 @Override public boolean onTouchEvent(MotionEvent event) { if (event.getPointerCount() > 1) { this.mScaleDetector.onTouchEvent(event); } else { this.mDetector.onTouchEvent(event); } return super.onTouchEvent(event); } 

Mi problema es que los gestos no se detectan (aunque puedo abrir el cajón con un gesto de deslizamiento). Este problema no ocurre si reemplazo el tiro de cajón con, por ejemplo, un diseño lineal, por lo que la causa es el cajón de navegación. ¿Qué estoy haciendo mal?

Usted tiene que fijar un TouchListener para su disposición del cajón. p.ej/

 gestureDetector = new GestureDetector(this, new CustomGestureListener()); mDrawerLayout.setOnTouchListener(new View.OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { if (gestureDetector.onTouchEvent(event)) { return true; } return false; } }); 
  • Html Audio en la vista web de Android
  • Java.lang.VerifyError IllformedLocaleException
  • ¿Se puede usar la fila de respaldo de archivo Square Tape en el hilo principal de android?
  • Android Java runOnUiThread ()
  • Motivo de la llamada a shutdown () en ExecutorService
  • ¿Cómo hacer una devolución de llamada después de que la vista esté completamente renderizada?
  • Obtener la lista de valores utilizando dom parser en android
  • Reducción inicial de zoom de Webview de Android
  • ¿Es posible ejecutar un servidor Tomcat y algunas aplicaciones web en un dispositivo Android? (es decir, un comprimido)
  • Cómo cancelar una solicitud http
  • ViewPager no muestra nada
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.