¿Cómo asociar el cajón de navegación al botón del arrastrador?

No estoy seguro de si esta es una pregunta común, no pude encontrar nada similar, pero tal vez simplemente no lo nombre correcto ..

Breve explicacion:

Estoy tratando de adjuntar a mi cajón de navegación, un botón (botón flotante) fuera de él para que el botón es visible incluso cuando el cajón está cerca, por lo que arrastrando el botón abre el cajón ..

Ejemplo de aplicación real:

Algunas aplicaciones como Waze tienen eso:

Introduzca aquí la descripción de la imagen

Mi intento

Así que antes de que me vuelva loco y los oyentes tacto de la instalación y las cosas molesto, intenté ir primero simple. Intenté simplemente agregar el botón dentro del NavigationView en el archivo del xml.

Heres mi acivity_main.xml:

<?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:clipChildren="false" android:fitsSystemWindows="true" tools:openDrawer="start"> <include layout="@layout/app_bar_main" android:layout_width="match_parent" android:layout_height="match_parent" /> <android.support.design.widget.NavigationView android:id="@+id/nav_view" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="start" android:fitsSystemWindows="true" app:headerLayout="@layout/nav_header_main" app:menu="@menu/activity_main_drawer"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_marginEnd="-80dp" android:text="drag me->" /> </android.support.design.widget.NavigationView> 

También me he asegurado de añadir esta línea al padre:

 android:clipChildren="false" 

(Por lo que el botón será capaz de cruzar fuera de los boundries ..)

Y esto es lo que parece (en la vista previa):

Introduzca aquí la descripción de la imagen

En las pruebas reales, el botón está realmente en la ubicación como en la imagen, pero si el cajón está completamente cerrado, el botón desaparece.

Si abro el cajón un poco, el botón se vuelve visible.

De todos modos, el botón no responde al tacto .. No puedo cerrar el cajón arrastrando el botón.

Entonces … ¿qué puedo hacer para arreglar esto? ¿Estoy cerca? O debo empezar maldiciendo algunos oyentes de contacto?

Gracias por adelantado!

Coloque el botón fuera de la vista de navegación

 button.setOnClikclistener({ drawer.closeDrawer(GRAVITY) / drawer.openDrawer(GRAVITY) } 

Si desea que el botón se mueva a lo largo del borde del cajón, tiene implementar comportamiento independiente para el botón utilizando el diseño del coordinador y los materiales

Esto puede venir en práctico https://www.bignerdranch.com/blog/customizing-coordinatorlayouts-behavior/

  • Cómo ajustar el ancho del cajón de navegación en el estudio de Android
  • Android: cajón de navegación sin xml
  • Detección del estado de la aplicación de currículum de diferentes android estado de navegación
  • Android Navigation Drawer (actividades de llamada) con AbstractMainActivity
  • Cómo cerrar el cajón de navegación cuando se pulsa un elemento desde el mismo?
  • Android - ¿Es posible cajón de navegación desde el lado derecho?
  • ActionBarDrawerToggle no está configurando el Indicador de cajón
  • Cajón de navegación siempre visible (un poco)
  • DrawerLayout se debe medir con MeasureSpec.EXACTLY error
  • NavigationDrawer desactivar el desplazamiento a la derecha
  • Cómo crear un cajón de navegación suave
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.