Строка состояния ящика навигации

У меня возникли проблемы с размещением панели навигации поверх панели состояния.

Я использую новую библиотеку поддержки дизайна. В blogspot говорится:

NavigationView позаботится о скрытой защите строки состояния для вас, гарантируя, что ваш NavigationView правильно взаимодействует со строкой состояния на устройствах API21+.

Но у него нет документации, поэтому я очень запутался, как использовать Drawer для достижения желаемого эффекта.

Я попытался вставить следующие атрибуты в свои стили-v21:

<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">@android:color/transparent</item>

после того, как этот навигационный ящик работает по мере необходимости, но другие действия имеют прозрачную строку состояния.

Может ли кто-нибудь дать мне лучшее решение?


person Ioane Sharvadze    schedule 12.07.2015    source источник
comment
Опубликуйте свой макет и ваши стили.   -  person Gabriele Mariotti    schedule 15.07.2015
comment
Спасибо за ответ, Габриэле, я нашел ответ, и я отвечу и закрою вопрос!   -  person Ioane Sharvadze    schedule 15.07.2015


Ответы (1)


Лучшее решение здесь — создать специальную тему для активности с такой навигацией.

в стилях.xml

<style name="NavigationDrawerTheme" parent="AppTheme"/>

но в стилях v21 вы переопределите это как

<style name="NavigationDrawerTheme" parent="AppTheme">
        <item name="android:statusBarColor">@android:color/transparent</item>
</style>

и в AndroidManifest.xml вы установите

<activity
    android:theme="@style/NavigationDrawerTheme"
    android:name=".activities.MainActivity"
    android:label="@string/title_activity_main" />

Так у вас будет правильное поведение во всех видах деятельности. :-)

P.S. Если кому-то нужно больше пояснений, комментируйте.

person Ioane Sharvadze    schedule 14.07.2015