ViewPager、2 つの Fragment、および 2 つのタブを表示する ActionBar を持つ sherlockfragmentactivity を使用します。フラグメントからアクション項目を設定しますが、メソッドを呼び出す必要があります
setHasOptionsMenu(true);
フラグメントが Actionbar MenuItem を表示するためです。ただし、画面の向きが変わると、MenuItems は表示されません。
最初のフラグメントでオプションメニューを作成するコードは次のとおりです。
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
menu.add(R.string.action_refresh).setIcon(R.drawable.ic_menu_refresh)
.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
public boolean onMenuItemClick(MenuItem item) {
refresh();
return false;
}
}).setShowAsActionFlags(MenuItem.SHOW_AS_ACTION_IF_ROOM);
menu.add(R.string.action_add_a_file).setIcon(R.drawable.ic_menu_upload)
.setShowAsActionFlags(MenuItem.SHOW_AS_ACTION_IF_ROOM);
menu.add(R.string.action_settings).setIcon(android.R.drawable.ic_menu_preferences)
.setIntent(new Intent(getSherlockActivity(), SettingsActivity.class))
.setShowAsActionFlags(MenuItem.SHOW_AS_ACTION_NEVER | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
}
SherlockFragment からアクション バーにアイテムを適切に追加する方法はありますか? また、画面の向きが変更された後、これらのアイテムを ActionBar に保持するにはどうすればよいですか?