material-components / material-components/material-components-android

[BottomNavigationView] BottomNavigationView can have only one setOnNavigationItemSelectedListener

Offen
#735 3 Kommentare 8 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

feature request Good First Issue Widget: BottomNavigation
Vorherrschende Sprache
Java
Sterne
17.4k
Forks
3.2k
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

FEATURE REQUEST

As per title, BottomNavigationView can have only one setOnNavigationItemSelectedListener. This is annoying because if i use the
bottomNavigationView.setupWithNavController(navController)
this internally sets that listener, and i cannot use it anymore for anything else (like setting the text in a custom appBar, for example)
A list of listeners would be the right thing in my opinion.

Ps. this probably applies to setOnNavigationItemReselectedListener(BottomNavigationView.OnNavigationItemReselectedListener listener)
too.

For Pattern reference, see NavController addOnDestinationChangedListener and removeOnDestinationChangedListener

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, die APIs BottomNavigationView's setOnNavigationItemSelectedListener und setOnNavigationItemReselectedListener zu lesen, und vergleiche dann ihr Verhalten mit dem Muster aus NavController's addOnDestinationChangedListener und removeOnDestinationChangedListener. Die Umsetzung sollte es der Navigationskonfiguration und einem weiteren Consumer ermöglichen, die relevanten Callbacks zu empfangen, ohne das Verhalten bestehender Listener zu beeinträchtigen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
android, java
Bereich
mobile
Issue-Typ
Feature
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.