「上へ」アクションを追加する

Compose をお試しください
Jetpack Compose は、Android で推奨される UI ツールキットです。Compose でコンポーネントを追加する方法について説明します。

ユーザーがアプリのメイン画面に簡単に戻れるようにする必要があります。そのためには、メインのアクティビティ以外のすべてのアクティビティに対して、アプリバーにアップボタン を表示します。ユーザーがアップボタンを選択すると、アプリは親アクティビティに移動します。

このページでは、Jetpack Navigation コンポーネントを使用してアプリバーに [上へ] ボタンを追加する方法について説明します。詳細については、NavigationUI を使用して UI コンポーネントを更新するをご覧ください。

アプリバーを構成する

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