J'ai une application dans laquelle je veux mettre en œuvre un double tiroir - un à partir de la gauche et de la droite. Tiroir gauche est pour app de navigation, à droite du tiroir est pour le filtrage de résultats.
Ainsi, la mise en page ressemble à ceci:
<?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:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/light_grey"
>
<GridView android:id="@+id/gridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:verticalSpacing="7dp"
android:horizontalSpacing="7dp"
android:stretchMode="columnWidth"
android:gravity="center"
style="@style/GridViewStyle"/>
</LinearLayout>
<ListView android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
android:background="#111"/>
<ListView android:id="@+id/right_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="end"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
android:background="#111"/>
</android.support.v4.widget.DrawerLayout>
Vous pouvez clairement voir ici "left_drawer" et "right_drawer", et de leur gravité "début" et "fin" Et cela fonctionne réellement! Vous pouvez retirer les deux.
Le problème c'est que quand je mets en œuvre la DrawerToggle - il ne s'ouvre le tiroir gauche, et ne ferme pas la bonne, donc si le tiroir est ouvert et je presse le DrawerToggle bouton gauche tiroirs s'ouvre ÉGALEMENT, et chevauche le droit de tiroir.
Il ya un couple de solutions je suis d'essayer d'obtenir:
- Faire la même DrawerToggle bouton sur le côté droit, avec le même comportement et de l'animation que pour le côté gauche.
- Faire le tiroir sur le côté opposé du tiroir, je suis en train d'ouvrir - fermer automatiquement (si le tiroir gauche est ouverte et que j'appuie sur l'interrupteur de droite tiroir et vice-versa).
Et je n'ai pas compris comment le faire, parce que DrawerToggle accepte la DrawerLayout lui-même en tant que paramètre, et non de la personne tiroirs...
Je suis l'aide de la Bibliothèque de prise en charge.
N'importe qui ont des idées? Je vous remercie à l'avance.