我以前没有使用过右边的布局,应用程序布局在AndroidManifest.xml
中强制rtl如下:
<application android:label="@string/app_name"
android:icon="@mipmap/icon"
android:supportsRtl="true"
android:layoutDirection="rtl" ...>
...
</application>
但这就是ActionBar
出现的方式:
<menu
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/inventory_menu_drawer"
android:showAsAction="always"
android:title="@string/action_search"
android:icon="@drawable/ic_menu_black_18dp" />
<item
android:id="@+id/inventory_menu_search"
android:actionViewClass="android.widget.SearchView"
android:showAsAction="collapseActionView|ifRoom"
android:title="@string/action_drawer"
android:icon="@drawable/ic_search_black_18dp" />
</menu>
这些物品不应该嵌套在rtl上,还是我错过了什么?我还在运行时使用Window.Context.Resources.Configuration.LayoutDirection
检查了布局方向,并返回Rtl
,活动视图也显示rtl OK。
这些物品从右到左排列,然后左对齐。如果你从左到右运行这段代码,你就会看到相反的情况。也就是说,这些项目将从左到右排列,然后右对齐。这是菜单项的工作方式:https://developer.android.com/guide/topics/ui/menus.html#options-menu