BottomNavigationView nicht zeigen, Menü-Titel, die inaktiv sind.
Wie um zu zeigen, Titeln alle Menü-Elemente in bottomNavigationBar?
Das problem ist, dass in meinem Fall nur angezeigt, Titel-element, das angeklickt wird.
InformationsquelleAutor der Frage Natan Rubinstein | 2016-10-21
Umsetzung von
BottomNavigationView
hat die Bedingung: wenn es mehr als 3 Artikel, dann verwenden Sie shift-Modus.In diesem moment können Sie nicht ändern, es durch vorhandene API und die einzige Möglichkeit zum deaktivieren der Timeshift-Modus ist die Verwendung von reflection.
Müssen Sie helper-Klasse:
Dann gelten
disableShiftMode
Methode auf IhreBottomNavigationView
aber denken Sie daran, wenn Sie aufblasen Menü Ansicht-code, den Sie ausführen müssen es nach dem aufblasen.Beispiel:
PS.
Denken Sie daran, Sie brauchen, um diese Methode ausführen jedes mal, wenn Sie Menüpunkte in Ihrer
BottomNavigationView
.UPDATE
Müssen Sie auch update proguard-Konfiguration-Datei (z.B. proguard-Regeln.pro), der obige code verwendet die reflektion und wird nicht funktionieren, wenn proguard verschleiern die
mShiftingMode
Feld.Dank Muhammad Alfaifi für den Hinweis dieses Problem und die Bereitstellung snippet.
InformationsquelleAutor der Antwort Przemysław Piechota. kibao
Deaktivieren der text-animation können Sie auch diese in Ihrer dimens.xml Datei:
InformationsquelleAutor der Antwort Pafoid
Przemysław Antwort in Kotlin als Erweiterung Funktion
Nutzung (mit Kotlin Android-Erweiterungen):
InformationsquelleAutor der Antwort ElegyD
Können Sie jetzt mit app:labelVisibilityMode="[beschrifteten, unbeschrifteten, ausgewählt, auto] - " 28-alpha
beschriftet wird, halten alle labels sichtbar.
unbeschriftete zeigt nur die Symbole.
ausgewählt, wird nur die Beschriftung für das ausgewählte Element und shift-Elemente.
auto wählen, beschriftet oder ausgewählt basierend auf der Anzahl der Elemente, die Sie haben. mit der Bezeichnung für die Punkte 1-3 und für die 3+ items.
InformationsquelleAutor der Antwort Lunkie
Da support library 28.0.0-alpha1:
InformationsquelleAutor der Antwort Junbin Deng
Deaktivieren der text-animation und verkleinern der Schriftgröße verwenden Sie diese in Ihrem dimens.xml Datei:
InformationsquelleAutor der Antwort Abhishek
Ich hatte einige seltsame Verhalten mit BottomNavigationView. Wenn ich die Auswahl jedes Element/fragment in es, das fragment schiebt BottomNavigationView ein wenig niedriger, so dass der text von BottomNavigationView geht unter dem Bildschirm, so dass nur die Symbole wurden sichtbar und der text geht versteckt wird beim anklicken eines Elements.
Wenn Sie mit Blick auf das seltsame Verhalten, dann ist Hier die Lösung.
Entfernen Sie einfach
in Ihrem root-layout des fragments. Einfach entfernen Sie diese und boom! BottomNavigationView funktioniert Prima, jetzt kann es gezeigt werden, mit text und Symbol.
Ich hatte diese in meinem Stamm-CoordinatorLayout von fragment.
Vergessen Sie auch nicht hinzufügen
in Ihrer Aktivität zu deaktivieren, verschieben-Modus.
Aber ist es nicht genau das, Bezug auf die gestellte Frage, aber dennoch finde ich dies sehr hilfreich.
InformationsquelleAutor der Antwort KishanSolanki124
Dies ist eine Drittanbieter-Bibliothek, die ich verwenden, und es hat viele Anpassungsmöglichkeiten, wie die Deaktivierung der shift-Modus, zeigt nur Symbole Einstellung der Symbole, Größe, etc.
BottomNavigationViewEx
InformationsquelleAutor der Antwort Pei
Funktioniert bei mir
InformationsquelleAutor der Antwort UgAr0FF
Um vollständig zu entfernen Animationen:
Wenn Sie auch wollen, um loszuwerden, die lästigen kleinen oberen Rand der animation, die Sie benötigen, mehr Reflexion-code. Hier ist die komplette Lösung, die entfernt alle Animationen:
Und stellen Sie sicher, hinzufügen, dass zu Ihrem proguard-Konfiguration-Datei:
InformationsquelleAutor der Antwort Thiago Porciúncula
möchte nur hinzufügen, dass über diese Methode disableShiftMode fügen Sie folgenden code zu.
@SuppressLint("RestrictedApi")
InformationsquelleAutor der Antwort Aleesha Kanwal