Как свернуть NavigationView / NavigationDrawer?

Я пытаюсь свести к минимуму или свернуть NavigationView / NavigationDrawer когда мое приложение работает на планшетах.

Я хочу получить результат, который используется приложением GMail, см. Скриншот ниже (вы можете увидеть, что нужный макет свернут слева).

Существует ли какой-либо метод или схема, которой нужно следовать для достижения этой цели?

1 ответ

Решение

Внимательно прочитав это официальное руководство NavigationDrawer, я обнаружил, что в моем вопросе использовались неправильные ключевые слова: он называется мини-блоком навигации (поэтому я сначала отредактировал свой вопрос).

Так что я смог найти ответ:

  1. Использовать стороннюю библиотеку, которая предлагается в этом ответе (да, мой вопрос дубликат!);
  2. Разработайте свое собственное решение, следуя этому примеру; Имейте в виду, что вы должны добавить некоторую причудливую анимацию и другие украшения, чтобы соблюдать рекомендации по дизайну материалов.

В любом случае, хитрость заключается в том, чтобы просто добавить поле слева в подробный вид (FrameLayout в данном случае) вот так:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.SlidingPaneLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <!--Master fragment-->
    <fragment
        android:name=".MainFragment"
        android:layout_width="220dp"
        android:layout_height="match_parent"
        android:id="@+id/fragment_master">
    </fragment>

    <!--Detail layout -->
    <FrameLayout
        android:layout_width="1000dp"
        android:layout_height="match_parent"
        android:layout_marginLeft="56dp">
    </FrameLayout>
</android.support.v4.widget.SlidingPaneLayout>
Другие вопросы по тегам