У меня есть активность в appcompat без темы панели действий.Я запускаю фрагмент внутри действия, чтобы отобразить список элементов.Элементы отображаются в двух режимах: список и удаление.Когда экран открывается, он всегда находится в режиме списка.Панели действий отличаются в двух режимах отображения.В режиме списка в панели действий у меня есть два пункта меню с правой стороны, которые отображаются, когда фрагмент открывается на время.Когда я возвращаюсь из режима удаления в режим списка, пункты меню тогда не раздуваются.Как сделать так, чтобы пункты меню увеличивались при переходе из режима удаления в режим списка.
После входа в экран пользователь переходит в режим списка.У меня есть setHasOptionMenu (правда);в моем фрагменте.Поэтому onCreateOptionMenu и onPrepareOtionsMenu оба вызываются, и оба пункта меню надуваются должным образом.
Когда я переключаюсь из режима списка в режим удаления (что происходит, когда вы нажимаете на элемент меню удаления, отображаемый на панели действий навверху слева), я надуваю новый пользовательский вид и удаляю все виды с панели инструментов, а затем добавляю этот пользовательский вид на панель инструментов, чтобы изменить панель действий в соответствии с режимом удаления:
View customView = LayoutInflater.from(getActivity()).inflate(
R.layout.delete_mode_toolbar_layout, null);
Toolbar toolbar = mActionBarHelper.getToolbar();
toolbar.removeAllViews();
toolbar.addView(customView);
И этоработает совершенно нормально с режимом удаления.
Но теперь, когда я возвращаюсь в режим списка, я снова делаю то же самое.
View customView = LayoutInflater.from(getActivity()).inflate(R.layout.list_mode_toolbar_layout,null);
Toolbar toolbar = mActionBarHelper.getToolbar();
toolbar.removeAllViews();
toolbar.addView(customView);
Objects.requireNonNull((AppCompatActivity)getActivity()).supportInvalidateOptionsMenu();
Но на этот раз в режиме списка действиеПанель отображается правильно в соответствии с пользовательской панелью инструментов в режиме списка, и вызываются oncreateoptionsmenu и onprepareoptionsmenu.Но пункты меню не завышены.
Извините, но из-за некоторых ограничений это весь код, которым я могу поделиться.Пожалуйста, прокомментируйте свои сомнения, я могу попытаться очистить их в комментариях.
Поэтому, пожалуйста, кто-то может помочь мне понять, почему пункты меню не раздуваются после возврата из режима удаления в режим списка.
Заранее спасибо.