У меня есть фрагмент, которому нужно создать собственную панель действий:
public class CalendarFragment extends Fragment {
public CalendarFragment() {
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
getActivity().supportInvalidateOptionsMenu();
setHasOptionsMenu(true);
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.calendar_menu1, menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
return super.onOptionsItemSelected(item);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
TextView textView = new TextView(getActivity());
textView.setGravity(Gravity.CENTER);
textView.setText("Calendar Fragment");
return textView;
}
}
проблема заключается в том, что он не создает новое меню с элементами из calendar_menu1, а просто добавляет элементы из него в старое меню, как будто invalidateOptionsMenu не работает (я попробовал getActivity(). invalidateOptionsMenu() тоже)