יצירה של בקר ניווט

בקר הניווט הוא אחד מהמושגים המרכזיים בניווט. הוא מכיל את גרף הניווט וחושף שיטות שמאפשרות לאפליקציה לעבור בין היעדים בגרף.

כשמשתמשים ברכיב הניווט, יוצרים בקר ניווט באמצעות המחלקה NavController. ‫NavController הוא ממשק ה-API המרכזי לניווט. היא עוקבת אחרי היעדים שהמשתמש ביקר בהם ומאפשרת לו לעבור בין היעדים. במדריך הזה מוסבר איך ליצור NavController באפליקציה.

מידע על הוספת תרשים ניווט ל-NavController זמין במאמר בנושא עיצוב תרשים הניווט. ‫NavController מספק כמה דרכים שונות לניווט ליעדים בתרשים שלו. מידע נוסף מופיע במאמר בנושא הגעה ליעד.

אימייל חדש

כדי ליצור NavController כשמשתמשים ב-Jetpack פיתוח נייטיב, קוראים ל-rememberNavController():

val navController = rememberNavController()

מומלץ ליצור את NavController ברמה גבוהה בהיררכיה של הרכיבים. הוא צריך להיות גבוה מספיק כדי שכל הרכיבים הניתנים להרכבה שצריכים להפנות אליו יוכלו לעשות זאת.

כך תוכלו להשתמש ב-NavController כמקור אמת יחיד לעדכון רכיבים שאפשר להשתמש בהם מחדש מחוץ למסכים. הגישה הזו מבוססת על העקרונות של העלאת הרמה של מצב (state hoisting).

צפיות

אם אתם משתמשים במסגרת הממשק של Views, אתם יכולים לאחזר את NavController באחת מהשיטות הבאות, בהתאם להקשר:

Kotlin:

Java:

בדרך כלל מקבלים קודם NavHostFragment, ואז מאחזרים את NavController מהקטע. בקטע הקוד הבא אפשר לראות דוגמה:

Kotlin

val navHostFragment =
    supportFragmentManager.findFragmentById(R.id.nav_host_fragment) as NavHostFragment
val navController = navHostFragment.navController

Java

NavHostFragment navHostFragment =
    (NavHostFragment) getSupportFragmentManager().findFragmentById(R.id.nav_host_fragment);
NavController navController = navHostFragment.getNavController();

קריאה נוספת

  • עיצוב תרשים הניווט: מדריך שמסביר איך להוסיף תרשים ל-NavController שמכיל את כל היעדים באפליקציה.
  • ניווט ליעד: מדריך שמסביר איך להשתמש ב-NavController כדי לעבור בין יעדים בתרשים הניווט.