Если мой полноэкранный режим (по умолчанию отключен) включен, я хочу, чтобы в разделе «Действия» скрывалась строка заголовка и панель уведомлений. Я могу сделать это с requestWindowFeature(Window.FEATURE_NO_TITLE);
+ FLAG_FULLSCREEN
и т. Д. Или, возможно, setTheme(android.R.style.Theme_NoTitleBar_Fullscreen);
Любое из этих событий должно произойти до setContentView()
, иначе они потерпят крах. Сложная часть:
- Я нацеливаюсь на уровни API с 3 по 14 и хочу скрыть строку заголовка только в том случае, если действие не будет использовать ActionBar. В противном случае
FEATURE_NO_TITLE
скроет панель действий и потеряет некоторые важные элементы управления. (Вместо этого я остановлюсь на режиме «выключения света».)
- Я не вижу, как узнать, будет ли использоваться ActionBar до после
setContentView()
, когда уже слишком поздно.
Вещи, которые не работают:
getActionBar()
возвращает ноль на этой ранней стадии.
getWindow.hasFeature(Window.FEATURE_ACTION_BAR)
ложно.
- Недостаточно знать (отражением), что ActionBar существует как класс, потому что, придерживаясь темы устройства по умолчанию, он не всегда может использовать ActionBar на некоторых устройствах Ice Cream Sandwich, даже если платформа есть. (?)
- В качестве альтернативы: могу ли я полагаться на то, что ICS всегда имеет ActionBar? Почему?
- Редактировать: хорошо, возможно, строка заголовка ICS все еще является панелью действий, просто без элементов и даже без кнопки переполнения? (В этом случае я все еще хочу это скрыть.) Может ли кто-нибудь пролить там свет?
Есть идеи? : -)