Aggiungere un'azione Su

Gli utenti hanno bisogno di un modo semplice per tornare alla schermata principale dell'app. A tale scopo, fornisci un pulsante Su nella barra delle app per tutte le attività tranne quella principale. Quando l'utente seleziona il pulsante Su, l'app passa all'attività principale.

Questa pagina mostra come aggiungere un pulsante Su alla barra delle applicazioni utilizzando il componente Navigazione Jetpack. Per una spiegazione più dettagliata, consulta Aggiornare i componenti dell'interfaccia utente con NavigationUI.

Configura la barra delle app

Configura la barra delle app utilizzando un AppBarConfiguration. Da AppBarConfiguration, puoi impostare la barra delle app per indicare le tue destinazioni di primo livello. Se il riquadro di navigazione a scomparsa è configurato, nella barra delle app delle destinazioni di primo livello viene visualizzata l'icona del menu a scomparsa . Se il riquadro di navigazione a scomparsa non è configurato, il pulsante di navigazione è nascosto nelle destinazioni di primo livello.

In entrambi i casi, il pulsante Su viene visualizzato su tutte le altre destinazioni. Premere il pulsante Su per chiamare navigateUp().

L'esempio seguente mostra come configurare una barra delle app utilizzando 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);
  }