NavigationDrawer desactivar el desplazamiento a la derecha

Tengo configuración de DrawerLayout con un cajón a cada lado

<FrameLayout android:id="@+id/navigation_drawer" android:layout_width="@dimen/navigation_drawer_width" android:layout_height="match_parent" android:layout_gravity="start" /> <FrameLayout android:id="@+id/navigation_drawer_right" android:layout_width="@dimen/navigation_drawer_width" android:layout_height="match_parent" android:layout_gravity="end" /> 

El cajón derecho se llena cuando se ejecuta cierto método, sin embargo, antes de que se ejecute el método, puedo deslizarlo desde la derecha y la pantalla se oscurece pero no aparece nada (porque el diseño está vacío hasta que se ejecute el método).

¿Cómo puedo deshabilitar el golpe de la derecha hasta que el método se ha ejecutado? He visto soluciones para deshabilitar completamente cualquier swiping, pero eso no funcionaría para mí, ya que el cajón izquierdo siempre debe funcionar (la función de dibujo derecho de configuración se llama cuando se selecciona una opción en el cajón izquierdo).

O, ¿habría una mejor manera de hacer esto? ¿Quizás agregar dinámicamente el FrameLayout derecho cuando se ejecuta la función?

Esto inhabilita el golpe:

 mDrawerLayout = (DrawerLayout) findViewById(R.id.navigation_drawer_right); mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED); 

Y para habilitar el golpe:

 mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED); 

Sólo para mencionar una observación interesante.

En caso de que esté utilizando una estructura de diseño para tener los menús izquierdo y derecho como este:

 <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" android:fitsSystemWindows="true"> <!-- MAIN CONTAINER --> <include layout="@layout/content_home" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_below="@id/toolbar"/> <!-- LEFT SIDE MENU --> <RelativeLayout android:id="@+id/left_side_menu" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="start" android:visibility="visible" android:fitsSystemWindows="false" android:background="@color/green"> <!-- put some menu items in here --> </RelativeLayout> <!-- RIGHT SIDE MENU --> <RelativeLayout android:id="@+id/right_side_menu" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="end" android:visibility="visible" android:fitsSystemWindows="false" android:background="@color/gray"> <!-- put some items in here --> </RelativeLayout> 

Usted va a tener un poco de tiempo tratando de desactivar sólo uno de los menús laterales con declaraciones como ésta:

 mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, findViewById(R.id.right_drawer)) 

Esto bloqueará todo el DrawerLayout y no podrá deslizar ninguno de los menús laterales.

Así, el método propuesto por @Alberto Maluje, bajo una de las respuestas anteriores, le dará más flexibilidad.

MDrawerLayout.setDrawerLockMode (DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.END);

Una respuesta un poco actualizada. Tienes que pasar la vista del cajón derecho para desactivar el golpe en ella.

 mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, findViewById(R.id.right_drawer)); 
  • Optimizar el cajón y la velocidad de lanzamiento de la actividad
  • Toque en cualquier lugar para deslizar el menú abierto para el cajón de navegación
  • Teclado de navegación oculta el teclado cuando onDrawerOpened
  • La flecha hacia arriba no se muestra después de llamar a ActionBarDrawerToggle.setDrawerIndicatorEnabled (false)
  • Cómo ajustar el ancho del cajón de navegación en el estudio de Android
  • Dos cajones de navegación en la misma actividad
  • Android - ¿Es posible cajón de navegación desde el lado derecho?
  • Cómo crear mini-menú de cajones en Android?
  • Cómo crear un cajón de navegación sin biblioteca de soporte
  • Icono de desplazamiento de la bandeja de navegación de Android a la derecha
  • El gaviota de navegación de Android no pasa onTouchEvent a la actividad
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.