Android: изменение цвета строки состояния для уровня API ниже 21

Я пытаюсь изменить цвет строки состояния для уровня API ниже 21. Изменив основной цвет в стиле темы, мы можем изменить цвет в строке состояния для уровня API 21.

«Игровой

Я ищу, как изменить цвет строки состояния для более низкой версии

Кто-нибудь может мне помочь, пожалуйста ?


person Binil Surendran    schedule 04.12.2015    source источник


Ответы (4)


Изменение цвета строки состояния доступно в Lollipop.

но на самом деле вы можете изменить цвет строки состояния для Api >= 19

внутри в стиле value-v19 поставить

<?xml version="1.0" encoding="utf-8"?>
<resources>

        <style name="AppTheme" parent="MaterialDrawerTheme.Light">
                <!-- Customize your theme here. -->
                <item name="android:windowNoTitle">true</item>
                <item name="android:windowTranslucentStatus">true</item>
                .....
        </style>
</resources>

цвет фона строки состояния станет прозрачным, и для его окрашивания вы просто поместите цвет фона в свое приложение, чтобы строка состояния приняла этот цвет

надеюсь было понятно и полезно

person Netero    schedule 04.12.2015
comment
Это хорошо, как я могу изменить его цвет вместо полупрозрачного? - person RoCk RoCk; 23.06.2016

Функция изменения цвета строки состояния доступна только начиная с Lollipop. Более низкие версии ОС не имеют этой функции. У вас нет возможности изменить цвет строки состояния на устройствах до леденцов.

person Jayakrishnan Salim    schedule 04.12.2015
comment
я не согласен с этим, что насчет этой библиотеки? github.com/jgilfelt/SystemBarTint - person ʍѳђઽ૯ท; 04.12.2015
comment
Это не совсем похоже на материальный дизайн. При этом мы можем создавать только полупрозрачные строки состояния. И сделать это можно только в API›=19. - person Jayakrishnan Salim; 04.12.2015


‹‹ Это не лучшее решение (но может быть и единственное), но оно работает ››

Ниже уровня API v21 вы можете изменить цвет строки состояния, изменив свой атрибут colorPrimaryDark (иногда colorPrimary) в в файле styles.xml и внутри используемой вами темы.

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

person Max    schedule 03.10.2020