ユーザー入力に応じて変更する必要があるメニューを作成しましたが、メニューは変更されますが、ユーザーがメニューを 2 回開いたときにのみ変更されます。私の推測では、元のメニューはによって構築されていますpublic boolean oncreateOptionsMenu(Menu menu)
が、メニューボタンをさらに押すまで実際には更新されないpublic boolean onPrepareOptionsMenu(Menu menu)
ため、メニューが初めて開いたときにそれ自体を更新するように指示する方法であるかどうか疑問に思っていました. 私は次のことを試しましたが、結果は見られませんでした:
public boolean onCreateOptionsMenu(Menu menu){
onPrepareOptionsMenu(menu);
MenuInflator inflater = getMenuInflater();
inflater.inflate(R.menu.menu_list, menu);
return true;
}
メニューが初めて開かれたときに onPrepareOptionsMenu 関数の変更を行う方法はありますか? onPrepareOptionsMenu のアクションを配置すると、メニューは変更されません。何らかの理由で古い値が表示されるため、変更は行われません