Como alterar o status da barra de cores para combinar com app no Lollipop ? [ Android ]

? Briscoooe @ | Original: StackOverFlow
---

Na nova atualização lollipop notei que com o nativo Google Apps a cor da barra de status muda para coincidir com a barra de ação sobre o aplicativo que você está executando. Eu vejo que é no app Twitter também por isso acredito que não é exclusivamente Google que pode fazê-lo .

Alguém sabe como fazer isso se for possível ?

---

Top 5 Responder

1mklimek @

Para alterar barra de status do uso de cores http://developer.android.com/reference/android/view/Window.html#setStatusBarColor(int ) . Segundo javadoc, também precisamos definir algumas bandeiras na janela .

Trecho de código de trabalho:

Window window = activity.getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
window.setStatusBarColor(activity.getResources().getColor(R.color.example_color));

Tenha em mente, http://www.google.com/design/spec/style/color.html#color-ui-color-application, barra de status cor e acção cor bar deve ser diferente :

ActionBar should use primary 500 color StatusBar should use primary 700 color

Olhe para a imagem abaixo :

Como alterar o status da barra de cores para combinar com app no Lollipop ? [ Android ]

2albemala @

Outra maneira de definir a cor da barra de status é através do style.xml .

Para fazer isso, crie um arquivo style.xml na pasta res / valores - v21 com este conteúdo :

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="AppTheme" parent="android:Theme.Material">
        <!--   darker variant for the status bar and contextual app bars -->
        <item name="android:colorPrimaryDark">@color/blue_dark</item>
    </style>
</resources>

Edit: como apontado nos comentários, ao usar AppCompat o código é diferente. Em arquivo res / valores / uso style.xml em vez disso:

<style name="Theme.MyTheme" parent="Theme.AppCompat.Light">   
    <!-- Set AppCompat’s color theming attrs -->
    <item name=”colorPrimary”>@color/my_awesome_red</item>
    <item name=”colorPrimaryDark”>@color/my_awesome_darker_red</item>
    <!-- Other attributes -->
</style>