Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Implementación de Gmail Tablet como Gaveta de navegación

Estaba buscando en el diseño de la tableta de la aplicación de Gmail. En ese Navigation Drawer implementación es diferente de otras. He adjuntado la imagen para su referencia.

Introduzca aquí la descripción de la imagen

Y también cuando expulso el cajón debe suceder como comportamiento normal del cajón de la navegación.

Introduzca aquí la descripción de la imagen

Me gustaría implementar de la misma manera. Estaba buscando, pero encontré sólo este enlace que no es tan útil. ¿Puede alguien darme sugerencias de cómo puedo hacer esto!

  • Android: permite el retrato y el paisaje para las tabletas, pero el retrato de la fuerza en el teléfono?
  • No se encontró ningún identificador de recursos para XLargeScreens
  • Herramienta de visualización para móviles (tableta)
  • Cajón de navegación: ajuste siempre abierto en tabletas
  • El fondo xml no cambia cuando uso la tableta
  • ¿Por qué la aplicación Android se ejecuta en una ventana pequeña en el emulador de tableta?
  • No se puede usar android: xlargeScreens = "true"?
  • 2 Solutions collect form web for “Implementación de Gmail Tablet como Gaveta de navegación”

    Puede usar un SlidingPaneLayout con un margen en el panel principal y un oyente personalizado para el desvanecimiento cruzado.

     <com.sqisland.android.CrossFadeSlidingPaneLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/sliding_pane_layout" android:layout_width="match_parent" android:layout_height="match_parent"> <FrameLayout android:layout_width="240dp" android:layout_height="match_parent" android:background="@color/purple"> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:text="@string/full"/> <TextView android:layout_width="64dp" android:layout_height="match_parent" android:background="@color/blue" android:text="@string/partial"/> </FrameLayout> <TextView android:layout_width="400dp" android:layout_height="match_parent" android:layout_weight="1" android:layout_marginLeft="64dp" android:background="@color/light_blue" android:text="@string/pane_2"/> </com.sqisland.android.CrossFadeSlidingPaneLayout> 

    Subclase SlidingPaneLayout y encuentre los paneles parcial y completo en onFinishInflate :

     protected void onFinishInflate() { super.onFinishInflate(); if (getChildCount() < 1) { return; } View panel = getChildAt(0); if (!(panel instanceof ViewGroup)) { return; } ViewGroup viewGroup = (ViewGroup) panel; if (viewGroup.getChildCount() != 2) { return; } fullView = viewGroup.getChildAt(0); partialView = viewGroup.getChildAt(1); super.setPanelSlideListener(crossFadeListener); } 

    Cambie el alfa del panel completo y el panel parcial con un oyente:

     private SimplePanelSlideListener crossFadeListener = new SimplePanelSlideListener() { public void onPanelSlide(View panel, float slideOffset) { super.onPanelSlide(panel, slideOffset); if (partialView == null || fullView == null) { return; } partialView.setVisibility(isOpen() ? View.GONE : VISIBLE); partialView.setAlpha(1 - slideOffset); fullView.setAlpha(slideOffset); } }; 

    También, ocultar el panel parcial cuando se abre el diseño.

     protected void onLayout( boolean changed, int l, int t, int r, int b) { super.onLayout(changed, l, t, r, b); if (partialView != null) { partialView.setVisibility(isOpen() ? View.GONE : VISIBLE); } } 

    Más información: http://blog.sqisland.com/2015/01/partial-slidingpanelayout.html

    Hay una biblioteca impresionante para este https://github.com/mikepenz/MaterialDrawer

    (Utilice MiniDrawer de esta biblioteca)

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.