Добавьте действие «Вверх»

Попробуйте способ создания
Jetpack Compose — рекомендуемый набор инструментов пользовательского интерфейса для Android. Узнайте, как добавлять компоненты в Compose.

Пользователям нужен простой способ вернуться на главный экран вашего приложения. Для этого обеспечьте кнопку «Вверх» на панели приложения для всех действий, кроме основного. Когда пользователь нажимает кнопку «Вверх», приложение переходит к родительскому действию.

На этой странице показано, как добавить кнопку «Вверх» на панель приложения с помощью компонента навигации Jetpack. Более подробное объяснение см. в разделе Обновление компонентов пользовательского интерфейса с помощью NavigationUI .

Настройте панель приложения

Настройте панель приложения с помощью AppBarConfiguration . Из AppBarConfiguration вы можете сообщить панели приложений о ваших пунктах назначения верхнего уровня. Если панель навигации настроена, значок меню панели отображается на панели приложений в местах назначения верхнего уровня. Если панель навигации не настроена, кнопка навигации скрыта в пунктах назначения верхнего уровня.

В обоих случаях кнопка «Вверх» отображается на всех остальных пунктах назначения. Нажатие кнопки «Вверх» вызывает navigateUp() .

В следующем примере показано, как настроить панель приложения с помощью AppBarConfiguration :

Котлин

  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)
  }
  

Ява

  @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);
  }