מיומנות 3: Jetpack Navigation

מדריך להעברת נתונים (מיגרציה)

  • מדריך להעברה מ-Navigation 2 ל-Navigation 3: מדריך מפורט להעברת אפליקציה ל-Android מ-Navigation 2 ל-Navigation 3, כולל עדכוני תלות, שינויים במסלולים, ניהול מצב והחלפות של רכיבי ממשק משתמש.

דרישות

תיעוד למפתחים

  • ‫*Navigation 3. במסמכי התיעוד של AndroidX Navigation אפשר למצוא מידע נוסף על הנושאים הבאים: יסודות, שמירה וניהול של מצב הניווט, מודולריזציה של קוד הניווט, יצירת פריסות בהתאמה אישית באמצעות Scenes, אנימציה בין יעדים או החלה של לוגיקה או wrappers על יעדים.

מתכונים

דוגמאות קוד שמציגות דפוסים נפוצים.

שימוש בסיסי ב-API

  • Basic: מציג את השימוש הבסיסי ביותר ב-API.
  • Saveable back stack: הדגמה של שימוש בסיסי ב-API עם היסטוריית חזרה מתמשכת.
  • Entry provider DSL: הדגמה של שימוש בסיסי ב-API באמצעות entryProvider DSL.

ממשק משתמש נפוץ

  • Common UI: הדגמה של הטמעה של תבנית נפוצה של ממשק משתמש לניווט עם סרגל ניווט תחתון ומספר מחסניות חזרה, שבהן לכל כרטיסייה בסרגל הניווט יש היסטוריית ניווט משלה.
  • Basic: במאמר הזה מוסבר איך לנתח כתובת URL של קישור עומק מ-Intent של Android למפתח ניווט.
  • מתקדם: הסבר על טיפול בקישורי עומק עם ערימה סינתטית של פעולות הקודמות ועל התנהגות ניווט נכונה של 'חזרה'.

סביבות תאורה

שימוש בסצנות מובנות

  • Dialog: דוגמה ליצירת Dialog.

יצירת סצנות בהתאמה אישית

  • BottomSheet: בדוגמה הזו אפשר לראות איך יוצרים יעד מסוג BottomSheet.
  • סצנת רשימה ופירוט: הדגמה של הטמעה של פריסות רשימה ופירוט שמותאמות באופן דינמי באמצעות Navigation 3 Scenes API.
  • סצנה עם שני חלונות: הדגמה של הטמעה של פריסות מותאמות עם שני חלונות באמצעות Navigation 3 Scenes API.

התאמה של חומרים

  • Material List-Detail: הדגמה של הטמעה של פריסת רשימה-פרטים דינמית באמצעות Material 3 Adaptive.
  • חלונית חומרים תומכים: סרטון שמראה איך להטמיע פריסת חלונית תומכת דינמית באמצעות Material 3 Adaptive.

אנימציות

  • אנימציות: הסרטון מראה איך לשנות את אנימציות ברירת המחדל לכל היעדים וליעד אחד.

התנהגות נפוצה של מקבץ פעילויות קודמות (back stack)

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

ניווט מותנה

  • ניווט מותנה: מעבר לזרימת ניווט אחרת כשמתקיים תנאי מסוים. לדוגמה, לאימות או להצטרפות של משתמשים חדשים.

ארכיטקטורה

עבודה עם ViewModel

העברת ארגומנטים של ניווט

  • ViewModel בסיסי: ארגומנטים של ניווט מועברים אל ViewModel שנוצר באמצעות viewModel()

החזרת תוצאות