Android: Multiple Option Menus in one Activity

前端 未结 1 584
臣服心动
臣服心动 2021-02-14 02:30

I have an Activity containing a ViewFlipper and would like to show a different option menu for each view in that ViewFlipper. That is, the

相关标签:
1条回答
  • 2021-02-14 03:09

    First read about onPrepareOptionsMenu(Menu menu)

    Each time the user presses the Menu on their Android device while inside one of your activities, the onPrepareOptionsMenu method is called. The first time the menu is shown (i.e. only once), the onCreateOptionsMenu method is called.

    Basically, the onPrepareOptionsMenu method is where you should make any changes such as enabling/disabling certain menu items, or changing the menu item text depending on the circumstances.

    So do this (Don't use onCreateOptionsMenu(Menu menu) )

    //Dynamically create context Menu
        @Override
        public boolean onPrepareOptionsMenu(Menu menu) {
            menu.clear(); //Clear view of previous menu
            MenuInflater inflater = getMenuInflater();
            if(condition_true)
                inflater.inflate(R.menu.menu_one, menu);
            else
                inflater.inflate(R.menu.menu_two, menu);
            return super.onPrepareOptionsMenu(menu);
        }
    
    0 讨论(0)
提交回复
热议问题