Ich möchte die Appcompat v21-Symbolleiste in meiner Aktivität haben. Die Symbolleiste, die ich implementiere, überlappt sich jedoch unterhalb der Statusleiste. Wie kann ich es reparieren?
Hier ist das Aktivitätslayout xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<include
android:id="@+id/toolbar"
layout="@layout/toolbar" />
<FrameLayout
android:id="@+id/container"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1" />
</LinearLayout>
Symbolleistenansicht:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary" />
Themenstil:
<style name="AppTheme" parent="MaterialNavigationDrawerTheme.Light.DarkActionBar">
<item name="colorPrimary">@color/primary</item>
<item name="colorPrimaryDark">@color/primary_dark</item>
<item name="colorAccent">@color/accent</item>
</style>
android
xml
android-layout
emen
quelle
quelle
Theme
Ihre Anwendung angepasst ? poste sie.CoordinatorLayout
Sie dies versuchen: stackoverflow.com/a/47906087/2201814Antworten:
Verwenden Sie
android:fitsSystemWindows="true"
in der Stammansicht Ihres Layouts (in Ihrem Fall LinearLayout). Undandroid:fitsSystemWindows
ist einquelle
<item name="android:fitsSystemWindows">true</item>
Setzen Sie dies einfach auf die Datei v21 / styles.xml
und sei sicher
quelle
Für mich war das Problem, dass ich etwas aus einem Beispiel kopiert und verwendet habe
Nur das Entfernen dieses Problems hat mein Problem behoben.
quelle
Keine der Antworten hat bei mir funktioniert, aber dies hat schließlich funktioniert, nachdem
android:fitSystemWindows
ich die Stammansicht festgelegt habe (ich habe diese in Stilen v21 festgelegt):Stellen Sie sicher, dass Sie nicht die folgende Zeile haben, wie AS es standardmäßig ausdrückt:
quelle
Keine der Antworten hat bei mir funktioniert, aber das hat schließlich funktioniert, nachdem ich festgelegt habe:
In der übergeordneten Aktivitätslayoutdatei wird dies an vielen Stellen nicht empfohlen, aber es funktioniert für mich und spart meinen Tag
quelle
androidx.coordinatorlayout.widget.CoordinatorLayout
Typ war.Ich habe alle unten genannten Zeilen aus /res/values-v21/styles.xml entfernt und jetzt funktioniert es einwandfrei .
quelle
Laut Google Docs sollten wir das Attribut fitSystemWindows nicht im App-Design verwenden, sondern es soll in Layoutdateien verwendet werden. Die Verwendung in Themen kann zu Problemen bei Toastnachrichten führen.
Überprüfen Sie das Problem hier Problem und das Beispiel des hier verursachten Problems
Beispiel für die Verwendung der richtigen Methode, die auch mit windowTranslucentStatus gut funktioniert .
quelle
Entfernen Sie die folgenden Zeilen aus Stil oder Stil (21).
quelle