יצירת תפריט הזזה באמצעות הרכיב של חלונית הניווט

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

ריכזנו כאן שלושה תרחישים לדוגמה להטמעת חלונית ניווט:

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

ב-Material Design יש שני סוגים של תיבות ניווט:

  • רגיל: שיתוף שטח במסך עם תוכן אחר.
  • מודל: מופיע מעל תוכן אחר במסך.

תאימות גרסאות

כדי להטמיע את האפשרות הזו, צריך להגדיר את minSDK של הפרויקט לרמת API 21 ואילך.

יחסי תלות

הטמעת חלונית הזזה לניווט

אפשר להשתמש ב-composable ModalNavigationDrawer כדי להטמיע תפריט ניווט:

נקודות עיקריות

  • משתמשים בחריץ drawerContent כדי לספק ModalDrawerSheet ולספק את התוכן של התיבה.

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

שליטה בהתנהגות של חלונית ההזזה לניווט

כדי לשלוט באופן שבו המגירה נפתחת ונסגרת, משתמשים ב-DrawerState:

נקודות עיקריות

  • מעבירים DrawerState אל ModalNavigationDrawer באמצעות הפרמטר drawerState.
  • DrawerState מספק גישה לפונקציות open ו-close, וגם לנכסים שקשורים למצב הנוכחי של התפריט הנפתח. כדי להשתמש בפונקציות ההשהיה האלה, צריך CoroutineScope. אפשר ליצור מופע של CoroutineScope באמצעות rememberCoroutineScope. אפשר גם להפעיל את הפונקציות להשהיה בתגובה לאירועים בממשק המשתמש.

תוצאות

איור 1. חלונית ניווט רגילה (משמאל) וחלונית ניווט מודאלית (מימין).

אוספים שמכילים את המדריך הזה

המדריך הזה הוא חלק מהאוספים הבאים של מדריכים מהירים, שמכסים יעדים רחבים יותר לפיתוח Android:

איך פונקציות מורכבות מאפשרות ליצור בקלות רכיבי ממשק משתמש יפים על סמך מערכת העיצוב של Material Design.

יש לכם שאלות או משוב

אתם יכולים להיכנס לדף השאלות הנפוצות שלנו ולקרוא מדריכים מהירים, או ליצור איתנו קשר ולספר לנו מה דעתכם.