Saya bertanya-tanya apakah mungkin mengubah warna ikon statusbar ( bukan warna statusbar, colorPrimaryDark
)
Katakanlah saya ingin statusbar ini dengan:
<item name="colorPrimaryDark">@android:color/white</item>
dan ikon berwarna hitam, apakah mungkin?
Terima kasih.
EDIT:
Baru di M developer preview: windowLightStatusBar. Membalik ini di tema Anda memberi tahu sistem untuk menggunakan latar depan gelap, berguna untuk bilah status berwarna lebih terang. Perhatikan bahwa pratinjau M tampaknya memiliki bug di mana ikon pemberitahuan tetap putih, sedangkan ikon status sistem dengan benar berubah menjadi hitam semitransparan.
dari: Pos Google+ Roman Nurik
<item name="android:windowLightStatusBar">true</item>
bekerja untuk saya.Ya, Anda dapat mengubahnya menjadi abu-abu (tidak ada warna khusus) tetapi ini hanya berfungsi dari API 23 dan di atasnya Anda hanya perlu menambahkan ini di values-v23 / styles.xml Anda
sumber
@eOnOe telah menjawab bagaimana kita dapat mengubah warna bilah status melalui xml. Tapi kita juga bisa mengubahnya secara dinamis dalam kode:
sumber
jika Anda memiliki API level lebih kecil dari 23, Anda harus menggunakannya dengan cara ini. itu berhasil untuk saya menyatakan ini di bawah v21 / style .
sumber
tools:targetApi="23"
memberi tahu Lint untuk menyembunyikan peringatan ini.Pengaturan
windowLightStatusBar
untuktrue
tidak berfungsi dengan ponsel Mi, beberapa ponsel Meizu, ponsel Blackview, WileyFox, dll. Saya telah menemukan peretasan semacam itu untuk perangkat Mi dan Meizu. Ini bukanlah solusi komprehensif dari masalah kinerja ini, tapi mungkin akan berguna bagi seseorang.Dan menurut saya, akan lebih baik untuk memberi tahu pelanggan Anda bahwa mewarnai bilah status (misalnya) putih - bukanlah ide yang bagus. daripada menggunakan peretasan yang berbeda, akan lebih baik untuk menentukan yang sesuai
colorPrimaryDark
sesuai dengan pedomansumber
Ya, Anda bisa mengubahnya. tetapi dalam api 22 dan lebih tinggi, menggunakan NotificationCompat.Builder dan setColorized (true):
sumber