Come cambiare lo stato delle barre di colore per abbinare app in Lollipop ? [ Android ]

? Briscoooe @ | Original: StackOverFlow

Nel nuovo aggiornamento lecca-lecca ho notato che con il nativo di Google apps il colore della barra di stato cambia per abbinare la barra delle azioni sul app si sta eseguendo . Vedo che è sulla app Twitter anche quindi immagino che non è solo Google che può farlo .

Qualcuno sa come fare questo se è possibile ?



Top 5 Respuesta

1mklimek @

Per cambiare lo stato bar uso del colore http://developer.android.com/reference/android/view/Window.html#setStatusBarColor(int ) . Secondo javadoc, abbiamo bisogno anche di impostare alcune bandiere sulla finestra .

Frammento di codice di lavoro:

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));

Tenete a mente, http://www.google.com/design/spec/style/color.html#color-ui-color-application, barra di stato di colore e di azione barra dei colori dovrebbe essere diverso :

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

Guardate lo screenshot qui sotto :

Come cambiare lo stato delle barre di colore per abbinare app in Lollipop ? [ Android ]



2albemala @

Un altro modo per impostare il colore della barra di stato è attraverso il style.xml .

Per fare questo, creare un file style.xml nella cartella res / valori - V21 con questo contenuto :

<?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 : come sottolineato nei commenti, quando si utilizza AppCompat il codice è diverso . Nel file di res / Valori / uso style.xml invece :

<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>