Cómo mostrar / ocultar el cajón de navegación mediante programación

¿Cómo puedo utilizar el botón para mostrar / ocultar el cajón de navegación, he utilizado este enlace SO para crear y gestionar el cajón de navegación.

Ahora estoy usando (Deslizar hacia la derecha de la izquierda – para mostrar) y (Deslizar de derecha a izquierda – para ocultar)

¿Cómo puedo mostrar / ocultar el cajón con el botón resaltado en la siguiente captura de pantalla:

Introduzca aquí la descripción de la imagen

Header_home.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="wrap_content" android:layout_width="fill_parent" android:id="@+id/header_layout" android:gravity="fill_horizontal" android:layout_gravity="top|center"> <TextView android:id="@+id/textHeader" android:text="Home" android:textColor="#ffffff" android:gravity="center" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/bg_header" /> <ImageButton android:id="@+id/btnDrawer" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:adjustViewBounds="true" android:background="@drawable/icon_drawer" android:contentDescription="@string/app_name" /> 

Editado:

  btnMenu.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub drawer.openDrawer(Gravity.LEFT); } }); 

Sé que para cerrar tengo que llamar a drawer.closeDrawer(Gravity.LEFT); Pero donde tengo que colocar este código?

Coge una referencia a DrawerLayout y llama a closeDrawer (int) para cerrarla y abreDrawer (int) para abrirla. El parámetro int se refiere a la gravedad. En su caso, debe ser Gravity.LEFT , ya que según la captura de pantalla que ha publicado, su DrawerLayout abrir y cerrar a la izquierda

Cerrar Cajón:

 drawer.CloseDrawer((int)GravityFlags.Left); 

Abrir el cajón:

 drawer.OpenDrawer((int)GravityFlags.Left); 

Si está utilizando el menú Cajón corredizo y desea ocultar el menú cuando está abierto (cuando arrastrar de derecha a izquierda). Entonces tenemos que lidiar con el listview de objetos con el oyente de ontouch. El código será así.

  //((( When we drage from Right to left then menu hide )))) lvMenu.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: toggleMenu(v); break; case MotionEvent.ACTION_UP: //showtoast("up"); break; default: return false; } return false; } }); public void toggleMenu(View v) { mLayout.toggleMenu(); } 

Para obtener el código completo, puede poner el comentario aquí, si tiene algún problema

  • Cajón de navegación para cambiar las actividades en lugar de fragmentos
  • Cómo crear un cajón de navegación suave
  • Encabezado de grupo de navegación - cómo configurarlo?
  • Cómo crear un cajón de navegación sin biblioteca de soporte
  • Cajón arrastrable con un asa (en lugar de barra de acción) encima de otras aplicaciones
  • El cajón de navegación no funciona en las versiones pre-ICS
  • Establecer el margen de arrastre para el Cajón de navegación Android
  • Android: cajón de navegación sin xml
  • Android: NavigationDrawer / múltiples actividades / mismo menú
  • Cajón de navegación de Android
  • DrawerLayout se debe medir con MeasureSpec.EXACTLY error
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.