サービスから開始され、ハンドラーを介して渡されたサービスからのメッセージに基づいて UI を変更するオプション メニューをアクティビティに作成しようとしています。
オプションメニューを次のように設定しました。
/** Menu creation and setup **/
/* Creates the menu items */
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, 1, 0, "Speaker");
menu.add(0, 2, 0, "Mute");
return true;
}
/* Handles item selections */
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case 1:
//Do something here
return true;
case 2:
//Do something here
return true;
}
return false;
}
しかし、アプリケーションがまったく実行されているときに呼び出されることはありません。
情報が間違ったスレッドで渡されているため、ハンドラーを使用して画面上のテキストを変更する必要があるという問題を経験しましたが、これと同じ問題が原因でメニューが表示されない可能性がありますか?
ハンドラーのメソッドをオーバーライドできないので、どうすれば修正できますか