工具栏菜单出现在片段中的硬件菜单键中

时间:2016-01-20 05:38:22

标签: android toolbar menuitem

我在片段中使用了工具栏。但菜单总是出现在硬件按钮中。我也试过了视图配置" sHasPermanentMenuKey "但它仍然显示在硬件菜单中。如何使菜单项显示在工具栏而不是硬件按钮?谢谢。

//片段onCreate方法

  @Override
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
        // TODO your code to hide item here    
        super.onCreateOptionsMenu(menu, inflater);
        menu.clear();
        inflater.inflate(R.menu.home, menu);

    }

//片段onCreateOtionsMenu

 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_home);
         try {
                ViewConfiguration config = ViewConfiguration.get(Home.this);
                Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");
                if (menuKeyField != null) {
                    menuKeyField.setAccessible(true);
                    menuKeyField.setBoolean(config, false);
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
}

//活动onCreate方法

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <item
        android:id="@+id/action_filter"
        android:title="@string/action_filter"
        app:showAsAction="always"
        android:icon="@drawable/ic_filter"
        />

    <item
        android:id="@+id/action_map"
        android:title="@string/action_map"
        app:showAsAction="always"
        android:icon="@drawable/ic_map"
        />

    <item
        android:id="@+id/action_search"
        android:title="@string/action_search"
        android:icon="@drawable/ic_search"
        app:actionViewClass="android.support.v7.widget.SearchView"
        app:showAsAction="collapseActionView|ifRoom"
        />

</menu>

//菜单项

Price and Distribution

我尝试使用FragmentActivity和AppCompatActivity,但它无效。

0 个答案:

没有答案