2016-07-24 21 views
2

Die Standard-Farbton in Android von Statusleiste ist weiß (so es eine Art soppos dass Statusleiste wird dunkel sein): enter image description here I've found, die ich Tönung in Android ändern Versionen größer oder gleich 23. Aber dann habe ich herausgefunden, dass mehrere Apps auf meinem Gerät (Android 5.1, API 22) schwarze Farbtöne verwenden. Wie haben sie das gemacht?Statusleiste Symbole und Text Tönung in Android-Versionen <23

Update: Das ist, was ich meine: Einige andere App haben Licht Statusleiste und schwarze Symbole, Zeit-Label und so weiter.

enter image description here

Dies ist meine App Probe mit weißer Statusleiste:

enter image description here

ich nicht windowLightStatusBar als wahr einstellen, um es von dem ersten Bild in Geräten mit API sieht aus wie app zu machen < 23.

+0

setStatusBarColor in 21 aufgenommen wurde, nicht 23. So sind sie, die auf Ihrem Telefon. –

+0

@GabeSchan setStatusBarColor kann nur die Farbe meiner Statusleiste festlegen, nicht die Tönung der Symbole. Also wird es eine weiße Statusleiste mit weißen Symbolen und Text geben (Fall, den ich gerade habe). Um dunkle Tönung zu aktivieren, müssen Sie windowLightStatusBar (API 23) verwenden –

+0

Sie werden einige Screenshots zeigen müssen, weil afaik, was Sie fragen, nicht mit Standardmitteln möglich ist. –

Antwort

0

Sie können diese Methode verwenden, um eine Statusleiste in kitkat und lollipop und über Geräten

Ihre eigene Farbe zu geben
public void translucentStatusBar() { 

      if(Build.VERSION.SDK_INT == Build.VERSION_CODES.KITKAT) { 
       getWindow().setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, 
         WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); 
      } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
       getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN); 
       getWindow().setStatusBarColor(Color.TRANSPARENT); 
      } 

      View view = findViewById(R.id.vFakeStatusBar); 
      view.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, 
        (int) getResources().getDimension(R.dimen.default_status_bar_height))); 
     } 

Im obigen Code Ausschnitt in der Statusleiste der Höhe 24dp (Standard).

+1

Vielen Dank für Ihre Hilfe, aber ich meinte Farbe von Text, Icons, Battary-Zeit, etc. Nicht Farbe der Statusleiste genau. –

0

Von this Antwort, fügen Sie in values-v23/style.xml

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

es

half Hoffnung
+0

Das funktioniert gut, aber Sie sollten Gerät mit API> = 23, um es zu verwenden. Ich habe gerade mehrere Apps auf meinem Gerät (API = 22) gefunden, die diese Funktion nutzen können. –

Verwandte Themen