Android-Völlig transparent Status Bar?
Ich gesucht habe die Dokumentation aber nur dies gefunden:
Link. Welche verwendet wird, um die bar durchscheinend? Was ich versuche zu tun ist, um die status bar vollständig transparent (wie im Bild unten gezeigt) und machen es rückwärts kompatibel für APK - <19:
Meine styles.xml:
<resources xmlns:tools="http://schemas.android.com/tools">
<style name="AppTheme" parent="Theme.AppCompat.Light">
<item name="android:actionBarStyle">@style/ThemeActionBar</item>
<item name="android:windowActionBarOverlay">true</item>
<!-- Support library compatibility -->
<item name="actionBarStyle">@style/ThemeActionBar</item>
<item name="windowActionBarOverlay">true</item>
</style>
<style name="ThemeActionBar" parent="Widget.AppCompat.Light.ActionBar.Solid">
<item name="android:background"> @null </item>
<!-- Support library compatibility -->
<item name="background">@null</item>
<item name="android:displayOptions"> showHome | useLogo</item>
<item name="displayOptions">showHome|useLogo</item>
</style>
</resources>
Was ich in der Lage war zu tun:
InformationsquelleAutor Muhammad Ali | 2015-03-27
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Alles, was Sie tun müssen, ist, legen Sie diese Eigenschaften in Ihrem Thema:
Ihre Tätigkeit /container-layout, das Sie möchten, haben eine transparente status bar muss diese Eigenschaft:
Ist es im Allgemeinen nicht möglich ist, um diese sicher auf pre-kitkat, sieht aus wie Sie es tun können aber einige seltsame code macht es so.
EDIT: ich würde empfehlen, diese lib: https://github.com/jgilfelt/SystemBarTint für viele pre-lollipop status bar color control.
Gut, nach viel überlegung habe ich gelernt, dass die Antwort auf ganz deaktivieren der Transluzenz oder irgendeine Farbe, platziert auf der Statusleiste und Navigationsleiste für lollipop ist setzen Sie dieses flag auf die Fenster:
Kein anderes Thema-ing erforderlich ist, erzeugt es so etwas wie dieses:
android:fitsSystemWindows="true"
zu meinem activity_main.xml. Das system bars sind transluzent und nicht transparent.Nun, ich glaube alles was Sie brauchen in diesem Fall dann fügen Sie
<item name="android:statusBarColor">@android:color/transparent</item>
zu Ihrem Thema 🙂Hmm, wir sind nah dran 😀 Versuchen Sie, diese Einstellung in das Thema als auch
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
ich glaube, es ist eigentlich, was sagt android zu verwenden, die statusBarColor Eigenschaft, die Sie festlegen (developer.android.com/reference/android/...)Ja, wir sind, wir danken Ihnen für Ihre Geduld, ich bin auf fast auf tilt, da ich versucht habe, dies zu tun für die letzten paar Stunden xD. Der code oben funktioniert nicht aber ich habe die
android:windowTranslucentStatus
auf false, und es machte die Statusleiste transparent. Jetzt habe ich die gleiche Sache mit navigaton bar und Hinzugefügt<item name="android:navigationBarColor">@android:color/transparent</item>
aber es macht beide Balken Grau. PFUI!"AdjustPan" Arbeit verwenden
w.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
stattInformationsquelleAutor Daniel Wilson
Fügen Sie einfach diese Zeile code in die Haupt-java-Datei:
InformationsquelleAutor Abhijeet Farakate
Können Sie das externe Bibliothek StatusBarUtil:
Hinzufügen, um Ihre Modul-Ebene
build.gradle
:Dann können Sie die folgenden util für eine Tätigkeit, um die status bar transparent:
Beispiel:
eine lib nur für das lösen dieser wie eine Kerze mit einem Flammenwerfer
InformationsquelleAutor David Rawson
Zeichnen Ihre Anlage unter statusbar:
values/styles.xml
values-v21/styles.xml
Verwenden CoordinatorLayout/DrawerLayout, die bereits kümmern sich um die fitsSystemWindows parameter oder erstellen Sie Ihre eigenen Layouts wie diese:
main_activity.xml
Ergebnis:
Screenshot:
InformationsquelleAutor Decam Developer
Verwenden
android:fitsSystemWindows="false"
in Ihrem top-layoutInformationsquelleAutor Miguel
Funktioniert seit Android KitKat und höher (Für diejenigen, die wollen, um die transparente Statusleiste und nicht manipulieren die NavigationBar, weil alle diese Antworten werden transparent NavigationBar auch!)
Der einfachste Weg, dies zu erreichen:
Diese 3 Zeilen code in der
styles.xml (v19)
-> wenn Sie nicht wissen, wie man diese (v19), nur schreiben Sie Sie in Ihrem Standard -styles.xml
und verwenden Sie dann alt+enter, um automatisch erstellt:Und jetzt, gehen Sie zu Ihrem
MainActivity
Klasse und diese Methode aus der onCreate in der Klasse:Dann diesen code in die
onCreate
Methode der Aktivität:Das ist es!
InformationsquelleAutor parsa dadras
Hier ist eine Erweiterung in kotlin, die den trick tun:
InformationsquelleAutor Felipe Castilhos
Komplett Transparenten StatusBar und NavigationBar
InformationsquelleAutor Ahamadullah Saikat
Mit diesem code in Ihre XML -, werden Sie in der Lage, um zu sehen, an der bar in Ihre Tätigkeit:
InformationsquelleAutor Irfan Ali
android:fitsSystemWindows="true"
nur auf v21. Wir können es in der theme-xml-oder im übergeordneten layout wieLinearLayout
oder inCoordinateLayout
.Für unten v21, Wir konnten nicht fügen Sie diese Flagge.
Bitte erstellen Sie unterschiedliche Ordner Werte mit unterschiedlichen
style.xml
- Datei, wie pro Ihre Notwendigkeit.InformationsquelleAutor Ashish Saini
Können Sie versuchen, dass.
InformationsquelleAutor Faisal Naseer
fügen Sie diese Zeilen in Ihre Tätigkeit vor dem setContentView()
fügen Sie diese 2 Zeilen in Ihre AppTheme
und die Letzte Sache, die Ihr minSdkVersion müssen b 19
InformationsquelleAutor Null Pointer Exception
Dieser arbeitete für mich:
InformationsquelleAutor greifmatthias
Alle eine brauchen, ist zu gehen in
MainActivity.java
InformationsquelleAutor John
Nicht
windowLightStatusBar
verwenden Sie stattdessenstatusBarColor = @android:color/transparent
InformationsquelleAutor NickUnuchek
Dies ist nur für API-Ebene >= 21. Es funktioniert für mich.
Hier ist mein code (Kotlin)
InformationsquelleAutor Capotasto
Sie können auch mein Beispiel mit animierten avatar und animierten text
CollapsingAvatarToolbarSample
Lesen Sie meine post auf Medium
Also lasst mich explaine, wie es funktioniert. Ich erstellte benutzerdefinierte Ansicht implementiert AppBarLayout.OnOffsetChangedListener. Innerhalb HeadCollapsing Benutzerdefinierte Ansicht gründete ich text-und image-anzeigen in AppBarLayout.
InformationsquelleAutor Serg Burlaka