2つのフラグメントを持つレイアウトがあり、どちらのフラグメントも独自のアクションバーを持ち、それぞれに独自のアクションアイテムとメニューがあります。私のアプリがランドスケープモードで、両方のフラグメントが画面に表示されている場合、フレームワークは「右」(または第2のフラグメント)にアクションバーを表示するように見えます。つまり、左側のフラグメント(第1のフラグメント)にアクション項目とメニューオプションがありません。2つのフラグメントを持つアクションバーを扱う
アプリがポートレートモードのときはすべて正常に機能するので、フラグメントが両方とも表示されているときにフラグメントを処理する必要があるかどうかはわかりません。ありがとう。フラグメント1では
:フラグメント2では
@Override
public void onCreateOptionsMenu(final Menu menu, final MenuInflater inflater) {
inflater.inflate(R.menu.fragment_menu_1, menu);
super.onCreateOptionsMenu(menu, inflater);
}
:
私はアクションバーにメニュー項目を追加するには、このコードを使用しています私の断片のそれぞれにおいてEDIT
@Override
public void onCreateOptionsMenu(final Menu menu, final MenuInflater inflater) {
inflater.inflate(R.menu.fragment_menu_2, menu);
super.onCreateOptionsMenu(menu, inflater);
}
更新日:
明らかにsetRetainInstance(true)
を使用しているため、メニューが更新されませんでした。私は、デバイスが回転した場合に例外をスローしていたAsyncTaskを持っているので、これを使用していました。だから私は1つの問題を修正したが、別の問題を壊した。
この質問への回答を提供するためのポストがあります。http://www.grokkingandroid.com/adding-action-items-from-within-fragments/ – firebear
[アクションバーチュートリアルの断片](http:// v4all123.blogspot.in/2013/07/simple-fragments-tutorial.html)。 – Gunaseelan