Nutzer müssen einfach zum Hauptbildschirm Ihrer App zurückkehren können. Dazu müssen Sie in der App-Leiste für alle Aktivitäten außer der Hauptaktivität die Schaltfläche Nach oben einblenden. Wenn der Nutzer auf die Schaltfläche „Nach oben“ klickt, navigiert die App zur übergeordneten Aktivität.
Auf dieser Seite erfahren Sie, wie Sie einer App-Leiste mithilfe der Jetpack-Navigationskomponente eine Schaltfläche „Zurück“ hinzufügen. Eine ausführlichere Erläuterung finden Sie unter UI-Komponenten mit NavigationUI aktualisieren.
App-Leiste konfigurieren
Konfigurieren Sie die App-Leiste mit einer AppBarConfiguration
.
Über das Dreistrich-Menü AppBarConfiguration
können Sie die App-Leiste über Ihre Ziele auf oberster Ebene informieren. Wenn die Navigationsleiste konfiguriert ist, wird das Symbol für das Menü der Navigationsleiste in der App-Leiste auf Zielen der obersten Ebene angezeigt. Wenn die Navigationsleiste nicht konfiguriert ist, ist die Navigationsschaltfläche auf Zielseiten der obersten Ebene ausgeblendet.
In beiden Fällen wird die Schaltfläche „Nach oben“ an allen anderen Zielen angezeigt. Wenn Sie die Auf-Taste drücken, wird navigateUp()
angerufen.
Das folgende Beispiel zeigt, wie eine App-Leiste mit AppBarConfiguration
konfiguriert wird:
Kotlin
override fun onCreate(savedInstanceState: Bundle?) { ... val navController = findNavController(R.id.nav_host_fragment_activity_main) val appBarConfiguration = AppBarConfiguration( setOf( R.id.navigation_home, R.id.navigation_dashboard, R.id.navigation_notifications ) ) binding.myToolbar.setupWithNavController(navController, appBarConfiguration) }
Java
@Override protected void onCreate(Bundle savedInstanceState) { ... NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment_activity_main); AppBarConfiguration appBarConfiguration = new AppBarConfiguration.Builder( R.id.navigation_home, R.id.navigation_dashboard, R.id.navigation_notifications) .build(); NavigationUI.setupWithNavController(binding.myToolbar, navController, appBarConfiguration); }