Існують різні способи зміни кольору рядка стану.
1) Використання styles.xml. Ви можете використовувати атрибут android: statusBarColor, щоб зробити це простим, але статичним способом.
Примітка. Цей атрибут також можна використовувати з темою «Матеріал».
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppTheme" parent="AppTheme.Base">
<item name="android:statusBarColor">@android:color/transparent</item>
</style>
</resources>
2) Ви можете це зробити динамічно, використовуючи метод setStatusBarColor (int) у класі Window. Але пам’ятайте, що цей метод доступний лише для API 21 або новішої версії. Тому не забудьте перевірити це, інакше ваш додаток обов'язково вийде з ладу на нижчих пристроях.
Ось робочий приклад цього методу.
if (Build.VERSION.SDK_INT >= 21) {
Window window = getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
window.setStatusBarColor(getResources().getColor(R.color.primaryDark));
}
де PrimaryDark - це 700 відтінків основного кольору, який я використовую у своєму додатку. Ви можете визначити цей колір у файлі color.xml.
Спробуйте, і дайте мені знати, якщо у вас є якісь питання. Сподіваюся, це допомагає.