Reputation: 101
How can i make the navigation drawer open from the right to the left?
Main.xml
<android.support.design.widget.NavigationView
android:id="@+id/navigation_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="end"
app:headerLayout="@layout/drawer_header"
app:menu="@menu/navigation"
android:background="#FFE7FF"/>
drawer_header.xml
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="150dp"
android:baselineAligned="false"
android:orientation="vertical">
navigation.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<group android:checkableBehavior="single">
<item
android:id="@+id/Home"
android:checked="true"
android:icon="@drawable/homelogo"
android:title="Home" /></group></menu>
This is how i create it in main activity
navigationView = (NavigationView) findViewById(R.id.navigation_view);
navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(MenuItem menuItem) {
switch (menuItem.getItemId()) {
(..........)
How can i make it ? I've tried android:gravity but it doesn't work.
Upvotes: 0
Views: 8798
Reputation: 865
Try setting android:layout_gravity="end" instead of android:layout_gravity="start"
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="end"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer" />
Upvotes: 1
Reputation: 1
it does change , only two things to do ,
After addig a new activity to your android app from android studio->file->new->activity ->Navigation Draw....
you have to change android:layout_gravity="right" in main layout's android.support.design.widget.NavigationView and drawer.closeDrawer(GravityCompat.END); in your OnNavigationItemSelected() function in main activity .
Upvotes: 0
Reputation: 6393
In your main.xml
there is the android.support.design.widget.NavigationView
which has the following attribute: android:layout_gravity="end"
. You have to set it to right, so it will be like this: android:layout_gravity="right"
.
The rest is done by the design support lib.
Note that the Android Studio will show a warning that you should use end
instead of right
in order to ensure correct behavior in right-to-left languages. You can ignore this message.
Upvotes: 3