DrawerLayout двойной ящик (левый и правый ящики одновременно)
У меня есть приложение, в котором я хочу реализовать двойной ящик - один слева и один справа. Левый ящик предназначен для навигации по приложениям, а правый - для фильтрации результатов.
Итак, макет выглядит так:
<?xml version="1.0" encoding="utf-8"?>
<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">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/light_grey"
android:orientation="vertical">
<GridView
android:id="@+id/gridview"
style="@style/GridViewStyle"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:horizontalSpacing="7dp"
android:stretchMode="columnWidth"
android:verticalSpacing="7dp" />
</LinearLayout>
<ListView
android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="#111"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp" />
<ListView
android:id="@+id/right_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="end"
android:background="#111"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp" />
</android.support.v4.widget.DrawerLayout>
Вы можете ясно видеть здесь "left_drawer" и "right_drawer", а также их соответствующую гравитацию - "start" и "end", и это на самом деле работает! Вы можете вытащить их обоих.
Проблема в том, что когда я реализую DrawerToggle - он открывает только левый ящик и не закрывает правый, поэтому, если открывается правый ящик, и я нажимаю кнопку DrawerToggle - левые ящики открываются ТАКЖЕ и перекрывают правый ящик ,
Есть несколько решений, которые я пытаюсь получить:
Сделайте ту же кнопку DrawerToggle на правой стороне, с тем же поведением и анимацией, что и на левой стороне.Сделайте ящик на противоположной стороне ящика, который я пытаюсь открыть - автоматически закройте (если левый ящик открыт, и я нажимаю на переключатель правого ящика и наоборот).И я не понял, как это сделать, потому что DrawerToggle принимает сам DrawerLayout в качестве параметра, а не отдельные ящики ...
Я использую библиотеку поддержки.
У кого-нибудь есть идеи? Заранее спасибо.