0

我的操作栏右侧有设置按钮。

main.xml来自rsc/menu

  <item
    android:id="@+id/action_settings"
    android:icon="@drawable/settings"
    android:orderInCategory="1"     
    android:showAsAction="ifRoom"
    android:title="Settings" />
  <item
    android:id="@+id/action_help"
    android:orderInCategory="2"     
    android:showAsAction="withText"
    android:title="Help" />

在操作栏中按下此按钮后,我希望打开带有其他项目的菜单。所以我getActivity().openOptionsMenu()在函数中添加了我的片段onOptionsItemSelected()

    @Override
        public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
            menu.clear();
            inflater.inflate(R.menu.main, menu);
            super.onCreateOptionsMenu(menu, inflater);
        }
        public boolean onOptionsItemSelected( MenuItem item) {

            switch (item.getItemId()) {

            case R.id.action_help:{
                //make help activity
            }
                return true;                       

            case R.id.action_settings:{

                getActivity().openOptionsMenu();
                }
                    return true;

            default:
                return super.onOptionsItemSelected(item);
            }

        }  

据我了解,我们不能使用openOptionsMenu()inonCreateOptionsMenu() 但是如何通过另一种方式解决这个问题?

4

0 回答 0