افزودن کنش «بالا»

امتحان کردن روش Compose
Jetpack Compose جعبه‌ابزار واسط کاربر توصیه‌شده برای Android است. با نحوه افزودن مؤلفه‌ها در Compose آشنا شوید.

کاربران به روشی آسان برای برگشتن به صفحه اصلی برنامه‌تان نیاز دارند. برای انجام این کار، دکمه بالا را در نوار برنامه برای همه فعالیت‌ها به‌جز فعالیت اصلی ارائه دهید. وقتی کاربر دکمه «بالا» را انتخاب می‌کند، برنامه به فعالیت اصلی پیمایش می‌کند.

این صفحه به شما نشان می‌دهد که چگونه بااستفاده از مؤلفه Jetpack Navigation، دکمه «بالا» را به نوار برنامه اضافه کنید. برای توضیح مفصل‌تر، به‌روزرسانی مؤلفه‌های واسط کاربر با 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);
  }