更改导航抽屉方向

Changing navigation drawer direction

我的应用程序中有导航抽屉,我通过 layoutdirection="rtl" 改变了它从右向左打开的方向,但它似乎弄乱了导航抽屉内容中的所有内容以及每个项目,例如视图和按钮以及...从右到左切换。我的意思是我在右边的某个地方有按钮,但在模拟器中它似乎在左边。 以前有人遇到过这个问题吗?我该如何解决?

我也试过这段代码,但是没有成功

getWindow().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_RTL); 
android:layout_gravity="right"

1) 如果你想使用

getWindow().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_RTL);

然后将此代码添加到清单

<application android:supportsRtl="true">

2) 另一种实现方式...

your_layout.xml:

<android.support.v4.widget.DrawerLayout 
  android:id="@+id/drawer_layout"
  tools:openDrawer="end">

 <android.support.design.widget.NavigationView
  android:id="@+id/nav_view"
  android:layout_gravity="end" // here you can change direction
  />
</android.support.v4.widget.DrawerLayout>

YourActivity.java:

 @Override
public boolean onOptionsItemSelected(MenuItem item) {
    if (item != null && item.getItemId() == android.R.id.home) {
        if (mDrawerLayout.isDrawerOpen(Gravity.RIGHT)) {
            mDrawerLayout.closeDrawer(Gravity.RIGHT);
        } 
        else {
            mDrawerLayout.openDrawer(Gravity.RIGHT);
        }
    }
    return false;
}