Systemleisten dimmen (eingestellt)

<ph type="x-smartling-placeholder">

In dieser Lektion wird beschrieben, wie Sie die Systemleisten (d. h. den Status und die Navigation Balken) unter Android 4.0 (API-Level 14) und höher. In Android gibt es keine integrierte Möglichkeit, Systemleisten bei früheren Versionen.

Bei diesem Ansatz ändert sich die Größe des Inhalts nicht, aber die Symbole in den Systemleisten wenn das Design wieder sichtbar ist. Sobald die nutzende Person entweder die Statusleiste oder den Navigationsleistenbereich werden beide Balken vollständig sichtbar. Der Vorteil dieser sind die Balken noch vorhanden, aber ihre Details sind verdeckt. So wird ein immersives Erlebnis geschaffen, ohne auf einfachen Zugriff auf die Leisten verzichten zu müssen.

Status- und Navigationsleisten dimmen

Sie können die Status- und Navigationsleisten mit der SYSTEM_UI_FLAG_LOW_PROFILE so:

Kotlin

// This example uses decor view, but you can use any visible view.
activity?.window?.decorView?.apply {
    systemUiVisibility = View.SYSTEM_UI_FLAG_LOW_PROFILE
}

Java

// This example uses decor view, but you can use any visible view.
View decorView = getActivity().getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_LOW_PROFILE;
decorView.setSystemUiVisibility(uiOptions);

Sobald der Nutzer die Status- oder Navigationsleiste berührt, wird die Kennzeichnung gelöscht. Dadurch wurden die Balken ungewollt. Nachdem das Flag gelöscht wurde, muss die App zurückgesetzt werden wenn du die Balken wieder dimmen möchtest.

Abbildung 1 zeigt ein Galeriebild, bei dem die Navigationsleiste abgeblendet ist. Beachten Sie, dass die App "Gallery" blendet die Statusleiste vollständig aus. wird er nicht abgedunkelt). Beachten Sie, dass die Navigationsleiste (rechte Seite des Bilds) weist schwache weiße Punkte auf, die die Navigationsbedienelemente darstellen:

Systemleisten

Abbildung 1: Ausgegraute Systemleisten

Abbildung 2 zeigt dasselbe Galeriebild, jedoch mit angezeigten Systemleisten:

Systemleisten

Abbildung 2: Sichtbare Systemleisten

Anzeigen der Status- und Navigationsleisten

Wenn Sie Flags programmatisch löschen möchten, die mit setSystemUiVisibility(), du schaffst das wie folgt:

Kotlin

activity?.window?.decorView?.apply {
    // Calling setSystemUiVisibility() with a value of 0 clears
    // all flags.
    systemUiVisibility = 0
}

Java

View decorView = getActivity().getWindow().getDecorView();
// Calling setSystemUiVisibility() with a value of 0 clears
// all flags.
decorView.setSystemUiVisibility(0);