用户需要能够轻松返回应用的主屏幕。为此,请针对除主 activity 以外的所有 activity 在应用栏中分别提供一个“向上”按钮 。当用户选择“向上”按钮时,应用便会转到父 activity。
本页介绍了如何使用 Jetpack Navigation 组件向应用栏添加向上按钮。如需了解更详细的说明,请参阅使用 NavigationUI 更新界面组件。
配置应用栏
使用 AppBarConfiguration
配置应用栏。您可以通过 AppBarConfiguration
向应用栏告知顶级目的地。如果已配置抽屉式导航栏,抽屉式菜单图标 会显示在顶级目的地的应用栏中。如果未配置抽屉式导航栏,导航按钮会在顶级目的地上隐藏。
在这两种情况下,向上按钮都会显示在所有其他目的地。按向上按钮会调用 navigateUp()
。
以下示例展示了如何使用 AppBarConfiguration
配置应用栏:
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); }