Istnieje wiele sposobów zmiany koloru paska stanu.
1) Za pomocą pliku styles.xml. Możesz użyć atrybutu android: statusBarColor, aby zrobić to w łatwy, ale statyczny sposób.
Uwaga: tego atrybutu można również używać z motywem Materiał.
<?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) Można to zrobić dynamicznie za pomocą metody setStatusBarColor (int) w klasie Window. Pamiętaj jednak, że ta metoda jest dostępna tylko dla API 21 lub nowszego. Więc pamiętaj, aby to sprawdzić, w przeciwnym razie Twoja aplikacja na pewno ulegnie awarii na niższych urządzeniach.
Oto działający przykład tej metody.
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));
}
gdzie primaryDark to 700 tint koloru podstawowego, którego używam w mojej aplikacji. Możesz zdefiniować ten kolor w pliku colors.xml.
Spróbuj i daj mi znać, jeśli masz jakieś pytania. Mam nadzieję, że to pomoże.