Android ActionBar布局方向错误

Android ActionBar wrong layout direction

我以前没有使用过从右到左的布局,应用程序布局在 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 并且 activity 视图也显示 rtl OK。

项目是从右到左排列的,但是 left-justified。如果您 运行 left-to-right 中的此代码,您会看到相反的情况。也就是说,项目将从左到右排列,然后 right-justified。菜单项是这样工作的:https://developer.android.com/guide/topics/ui/menus.html#options-menu