2015-08-20 13 views
5

Come posso aprire a livello di programmazione (mostra sullo schermo) NavigationView? Non riesco a trovare alcuna funzione ciò che può essere utile.Come posso aprire a livello di programmazione (mostra sullo schermo) NavigationView

ho questo file xml:

<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:fitsSystemWindows="true"> 

    //... 

    <android.support.design.widget.NavigationView 
     android:id="@+id/navigation" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_gravity="start" 
     app:headerLayout="@layout/nav_header" 
     app:itemTextColor="#333" 
     app:itemIconTint="#333" 
     app:menu="@menu/navigation_drawer_items" /> 

</android.support.v4.widget.DrawerLayout> 

risposta

10

È necessario avere riferimento a DrawerLayout

drawerLayout.openDrawer(); 
drawerLayout.closeDrawer(); 

uso openDrawer e closeDrawer di cambiare menù visibilità

+0

si, grazie) Ho usato drawerLayout.openDrawer (Gravity.LEFT) –

+2

'drawerLayout.openDrawer (Gravity.START)' è preferibile – deathangel908

+0

@ deathangel908 Perché 'drawerLayout.openDrawer (Gravity.START)' è meglio di openDrawer? Penso che openDrawer() sia molto più leggibile. – mariopce

0

Per migliorare il codice:

drawerLayout.openDrawer(Gravity.LEFT); 
drawerLayout.closeDrawer(Gravity.LEFT); 
Problemi correlati