Мне любопытно, как (если вообще) onPrepareOptionsMenu(Menu)
(и по расширению, onPreparePanel(int, View, Menu)
) используется на Android 3.0+ при настройке API 11 или выше.
Мое мышление выглядит следующим образом:
An Activity
ActionBar
получает свое содержимое от onCreateOptionsMenu(Menu)
, где вы можете раздувать ресурс меню XML, добавлять элементы напрямую или какую-то их комбинацию. Любые фрагменты активности также получат этот вызов и имеют возможность сделать то же самое.
Чтобы обновить элементы в ActionBar, вы можете либо удержать экземпляр Menu
, либо вызвать invalidateOptionsMenu()
, который затем завершится снова вызывая onCreateOptionsMenu(Menu)
.
Таким образом, существует onPrepareOptionsMenu(Menu)
, а затем только вокруг для поддержки устаревших приложений, которые не нацелены на API 11 или новее?
Вызывает ли вызов getActionBar().hide()
и getActionBar().show()
вызов onPrepareOptionsMenu(Menu)
?
Может ли это добавить или удалить фрагмент?