在NavigationView中从右到左的菜单项Android
作者:互联网
即时通讯的android.我设计了一个这样的导航抽屉:
如您所见,菜单中的所有项目都在右侧,“SubHeader”除外.
如何将“SubHeader”项目移动到此菜单的右侧?我使用所有属性,如重力,布局重力,layoutDirection到SubHeaderItem,但它不起作用.
我的代码是
<android.support.design.widget.NavigationView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/navigation_view"
android:layout_gravity="end"
android:fitsSystemWindows="true"
android:layoutDirection="rtl"
app:headerLayout="@layout/navigation_header"
app:menu="@menu/navigation_menu"
/>
我的菜单代码是:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<group android:checkableBehavior="single">
<item
android:title="inbox"
android:id="@+id/inbox_id"
android:icon="@drawable/inbox" />
</group>
<item android:title="SubHeader">
<menu>
<item
android:title="all main"
android:id="@+id/all_mail"
android:icon="@drawable/allmail" />
</menu>
</item>
</menu>
解决方法:
尝试将这些属性添加到布局文件中的NavigationView.
android:layoutDirection="rtl"
android:textDirection="rtl"
如果没别的办法.您应该使用自定义布局
例:
<android.support.design.widget.NavigationView
android:layoutDirection="rtl"
android:id="@+id/navigation_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="right"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer>
<LinearLayout>
// code xml here
</LinearLayout>
<android.support.design.widget.NavigationView/>
标签:android,navigation-drawer,menu,right-to-left 来源: https://codeday.me/bug/20191002/1843577.html