私はチュートリアルを進めており、メニューを作成するためのこのサンプルコードを示しました:
public void onCreateOptionsMenu(Menu m) {
super.onCreateOptionsMenu(m);
MenuInflater menuInflater = getMenuInflater();
menuInflater.inflate(R.menu.time_list_menu, m);
}
エラーが発生したので、ブール値に変更しました。これが現在の状態です。代わりにこれを実行すると、次のように機能します。
public boolean onCreateOptionsMenu(Menu m) {
super.onCreateOptionsMenu(m);
MenuInflater menuInflater = getMenuInflater();
menuInflater.inflate(R.menu.time_list_menu, m);
return true;
}
しかし、スタックオーバーフローに関する別の質問から、このようなものもあります
onCreateOptionsMenu がメニューを表示しない理由を理解する
Android doc にもこれがあります:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.game_menu, menu);
return true;
}
スーパーへの呼び出しはどこに行きましたか?なぜそれが必要ないのですか? 間違った方法でメニューを作成する正しい方法は何ですか?
私が主題に取り組んでいる間、Docには@Overrideも表示されますが、私はそれを持っておらず、機能しています。メソッドが明示的にオーバーライドされている場合、それが必要かどうかについて私は混乱しています。助けてくれてありがとう。明確化が必要な場合は、お知らせください。