برای انواع مقصد جدید پشتیبانی اضافه کنید

نوع NavController برای انجام عملیات ناوبری به یک یا چند شی Navigator متکی است. به طور پیش‌فرض، NavController از خروج از نمودار ناوبری با پیمایش به یک فعالیت دیگر با استفاده از کلاس ActivityNavigator و کلاس ActivityNavigator.Destination تو در تو پشتیبانی می‌کند.

برای پیمایش به هر نوع مقصد دیگری، یک یا چند شی Navigator اضافی باید به NavController اضافه شود. به عنوان مثال، هنگام استفاده از قطعات به عنوان مقصد، NavHostFragment به طور خودکار کلاس FragmentNavigator را به NavController خود اضافه می کند.

برای افزودن یک شی Navigator جدید به NavController ، از متد getNavigatorProvider() و به دنبال آن از متد addNavigator() استفاده کنید.

کد زیر نمونه ای از اضافه کردن یک شی CustomNavigator به NavController را نشان می دهد:

کاتلین

val customNavigator = CustomNavigator()
navController.navigatorProvider += customNavigator

جاوا

CustomNavigator customNavigator = new CustomNavigator();
navController.getNavigatorProvider().addNavigator(customNavigator);

اکثر کلاس های Navigator دارای یک زیر کلاس مقصد تو در تو هستند. این زیر کلاس می تواند برای تعیین ویژگی های اضافی منحصر به فرد برای مقصد شما استفاده شود. برای اطلاعات بیشتر در مورد زیر کلاس های مقصد، به مستندات مرجع برای کلاس Navigator مناسب مراجعه کنید.

منابع اضافی

برای کسب اطلاعات بیشتر در مورد ناوبری، به منابع اضافی زیر مراجعه کنید.

نمونه ها

Codelabs

ویدیوها