Eu queria saber se é possível alterar a cor dos ícones da barra de status ( não a cor da barra de status colorPrimaryDark
)
Digamos que eu queira esta barra de status com:
<item name="colorPrimaryDark">@android:color/white</item>
e os ícones em preto, é possível?
Obrigado.
EDITAR:
Novo na visualização do desenvolvedor M: windowLightStatusBar. Ativar isso no seu tema indica ao sistema para usar um primeiro plano escuro, útil para barras de status de cores mais claras. Observe que a visualização M parece ter um erro no qual os ícones de notificação permanecem brancos, enquanto os ícones de status do sistema mudam corretamente para preto semitransparente.
de: Roman Nurik postagem do Google+
<item name="android:windowLightStatusBar">true</item>
trabalhou para mim.Sim, é possível alterá-lo para cinza (sem cores personalizadas), mas isso funciona apenas a partir da API 23 e acima, você só precisa adicioná-lo aos seus valores-v23 / styles.xml
fonte
A @eOnOe respondeu como podemos alterar o tom da barra de status através do xml. Mas também podemos alterá-lo dinamicamente no código:
fonte
se você tiver um nível de API menor que 23, deverá usá-lo dessa maneira. funcionou para mim declarar isso sob v21 / style .
fonte
tools:targetApi="23"
peça diz ao Lint para suprimir esse aviso.Definindo
windowLightStatusBar
paratrue
não funcionar com telefones Mi, alguns telefones Meizu, telefones Blackview, WileyFox etc. Eu encontrei esse truque para dispositivos Mi e Meizu. Essa não é uma solução abrangente desse problema de desempenho, mas talvez seja útil a alguém.E eu acho que seria melhor dizer ao seu cliente que colorir barra de status (por exemplo) branca - não é uma boa ideia. em vez de usar hacks diferentes, seria melhor definir apropriado de
colorPrimaryDark
acordo com as diretrizesfonte
Sim, você pode mudar isso. mas na API 22 e acima, usando NotificationCompat.Builder e setColorized (true):
fonte