Mit SystemUiHider zu halten, die navigation bar ausgeblendet
In älteren Versionen von Android, war es notwendig, zu verwenden: android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
im manifest zu machen, die Titel-Leiste verschwinden.
In der neueren ADT-Versionen, die ich bemerkt haben, die SystemUiHider
- Klasse können Sie Anrufe tätigen, um es hide()
Methode zu entfernen nicht nur die Titelleiste, sondern auch die action-bar und navigation bar.
Ich bin versucht zu schreiben, eine fullscreen-app, dass ich bleiben möchte Vollbild (für einen kiosk-Implementierung), es sei denn einen kleinen, versteckten Knopf gedrückt wird.
Habe ich versucht, die standard-FullscreenActivity (generiert von der neuen android Projekt-wizard), und verhindern, dass die Benutzeroberfläche wieder in eine Reihe von Möglichkeiten:
- Telefonieren zu
mSystemUiHider.hide()
imsetOnVisibilityChangeListener
(zu versuchen und sofort ausblenden der Benutzeroberfläche, wenn es erkennt eine änderung in Sicht) - Einstellung:
AUTO_HIDE_DELAY_MILLIS = 0
(zu versuchen und sich sofort verstecken, wenn es sichtbar ist) - Verhindert den Aufruf
mSystemUiHider.show();
innerhalb deronClick
Methode dercontentView.setOnClickListener
(um zu verhindern, dass es angezeigt wird) - Ich habe auch gesehen, das
setSystemUiVisibility
Beispiel in den docs für android.Ansicht (wieder, um zu versuchen und verstecken sich sofort, wenn gezeigt oder die Sichtbarkeit geändert wird)
Keiner von Ihnen scheinen zu funktionieren (Android standardmäßig die Low-Profile-Modus für die Navigation Bar wenn eine von Ihnen versucht werden.
Ich verstehe, dass Sie wahrscheinlich nicht wollen, dass die Entwickler das tun, was ich versuche zu tun, aber ich hatte gehofft, dass ich verlängern könnte SystemUiHider
(und/oder SystemUiHiderBase
) und überschreiben Sie die show()
Methoden, um im wesentlichen nicht zeigen, es sei denn, bestanden true
Flagge. Ich kann nicht scheinen zu finden, jegliche Dokumentation, die auf jeder dieser Klassen (vielleicht, weil Sie sind utility-Klassen?).
- Es muss eine Lösung sein, die app MXPlayer löst diese schön mit der Schaltfläche "sperren".
- möglich, Duplikat der Fullscreen-activity-Assistenten-Tätigkeit. Wie verhindere ich, actionbar, wenn ich mit dem Gerät interagieren?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Jeder Interaktion mit dem Gerät bringt Sie zurück in der Navigationsleiste.
https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_HIDE_NAVIGATION