Я хочу приховати рядок заголовка для деяких моїх дій. Проблема в тому, що я застосував стиль до всіх своїх дій, тому я не можу просто встановити тему на @android:style/Theme.NoTitleBar
.
Використання теми NoTitleBar як батьківської для мого стилю призведе до видалення рядка заголовка з усіх моїх дій.
Чи можна десь встановити елемент стилю без заголовка?
Зробіть це у вашому методі onCreate()
.
//Remove title bar
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
//Remove notification bar
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
//set content view AFTER ABOVE sequence (to avoid crash)
this.setContentView(R.layout.your_layout_name_here);
Це
відноситься до Діяльності
.
Тепер я зробив наступне.
Я оголосив стиль, який успадковує все від мого загального стилю, а потім відключив titleBar.
<style name="generalnotitle" parent="general">
<item name="android:windowNoTitle">true</item>
</style>
Тепер я можу встановити цей стиль для кожної дії, в якій я хочу приховати рядок заголовка, перезаписуючи загальний стиль програми та успадковуючи всю іншу стильову інформацію, тому немає дублювання в коді стилю.
Щоб застосувати стиль до конкретної Активності, відкрийте AndroidManifest.xml
і додайте наступний атрибут до тегу activity
;
<activity
android:theme="@style/generalnotitle">
Ви можете застосовувати теми до окремих видів діяльності в XML, наприклад, без назви. Іншими словами, візьміть його з тегу програми, відкрийте декларацію тегу і помістіть його в потрібний тег діяльності.