2015-03-02 29 views
7

Sto lavorando alla creazione di un'app con barra degli strumenti con barra di stato traslucida per avere la barra di stato anche colorata. Funziona perfettamente con la proprietà true .Android: barra di stato della barra degli strumenti sovrapposta

È solo che la barra degli strumenti si sovrappone alla barra di stato ora che sembra disordinata. Qual è l'opzione per posizionare la barra degli strumenti sotto la barra di stato mantenendo lo stato traslucido della finestra?

Frammenti di codice:

<style name="Theme.XXX" parent="Theme.AppCompat"> 
     <item name="colorPrimary">...</item> 
     <item name="colorPrimaryDark">...</item> 
     <item name="android:windowTranslucentStatus">true</item> 
     <item name="windowActionBar">false</item> 
     <item name="colorAccent">...</item> 
    </style> 

codice barra degli strumenti utilizzati in attività:

<android.support.v7.widget.Toolbar 
     android:id="@+id/main_toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:background="@color/XXX" 
     android:elevation="5dp" 
     android:minHeight="?attr/actionBarSize" 
     android:theme="@style/Theme.XXX" /> 

Grazie in anticipo.

+0

Si prega di mostrare il codice –

+0

Hai mai capire questo? – casolorz

+2

questa domanda ha già avuto risposta qui http://stackoverflow.com/questions/29738510/toolbar-overlapping-below-status-bar – silverFoxA

risposta

1

Immagino che tu stia usando la proprietà fitSystemWindows.

Spegnere.

+0

Grazie, ma questo non sembra aiutare. Ho le seguenti impostazioni nel tema ........ true false ...... –

10

come Virus dice correttamente, la risposta è qui: Toolbar overlapping below status bar

È sufficiente aggiungere l'attributo

Android: fitsSystemWindows = "true"

nella voce xml e funzionerà bene :)

+3

Non lo consiglio questo perché ci sono alcuni effetti collaterali con il brindisi e perché la barra di stato in realtà sceglierà un colore grigio e immagino che gli sviluppatori non lo desiderino se ne hanno già il colore. guarda meglio questo [leggi] (https://code.google.com/p/android/issues/detail?id=63653) – Rensodarwin

+1

Questo non funziona. – Ricardo

+0

Se ho la pagina xaml di quale parametro devo impostare? –

1

Potrebbe essere il tuo tema è questo

<item name="android:statusBarColor">@android:color/transparent</item> 

commento fuori

0

Basta aggiungere questo al file di V21/styles.xml

<item name="android:windowDrawsSystemBarBackgrounds">false</item> 
<item name="android:statusBarColor">@android:color/transparent</item> 
0

Al fine di mantenere lo status traslucido, è necessario disporre di

<item name="android:windowTranslucentStatus">true</item> 

Basta fare il seguente falso

<item name="android:windowDrawsSystemBarBackgrounds">false</item> 

e nel layout genitore

android:fitsSystemWindows="true" 
Problemi correlati