אינדיקטורים של התקדמות מציגים באופן חזותי את הסטטוס של פעולה. הם משתמשים בתנועה כדי להעביר למשתמש את המידע על מידת ההתקדמות בתהליך, למשל טעינת נתונים או עיבוד נתונים. הן יכולות גם לסמן שהעיבוד מתבצע, בלי לציין עד כמה הוא קרוב לסיום.
ריכזנו כאן שלושה תרחישים לדוגמה שבהם כדאי להשתמש במדד התקדמות:
- טעינה של תוכן: בזמן אחזור תוכן מרשת, למשל טעינת תמונה או נתונים של פרופיל משתמש.
- העלאת קובץ: נותנים למשתמש משוב על משך ההעלאה המשוער.
- עיבוד ארוך: כשאפליקציה מעבדת כמות גדולה של נתונים, חשוב להציג למשתמש את ההתקדמות ביחס לזמן הנדרש.
בעיצוב חדשני תלת-ממדי יש שני סוגים של אינדיקטורים של התקדמות:
באופן דומה, אינדיקטור ההתקדמות יכול להופיע באחת משתי הצורות הבאות:
- לינארי: סרגל אופקי שמתמלא משמאל לימין.
- מעגלית: מעגל שהקו שלו מתארך עד שהוא מקיף את ההיקף המלא של המעגל.
תאימות גרסאות
כדי להטמיע את הקוד הזה, צריך להגדיר את minSDK של הפרויקט לרמת API 21 ואילך.
יחסי תלות
יצירת אינדיקטורים מוגדרים
אינדיקטור מדויק משקף בדיוק את מידת השלמות של פעולה. משתמשים ברכיבי ה-Composable LinearProgressIndicator
או CircularProgressIndicator
ומעבירים ערך לפרמטר progress
.
קטע הקוד הבא מספק דוגמה מפורטת יחסית. כשהמשתמש לוחץ על הלחצן, האפליקציה מציגה את מדד ההתקדמות ומפעילה פונקציית קורוטין שמגדילה בהדרגה את הערך של progress
. כתוצאה מכך, אינדיקטור ההתקדמות עולה בהדרגה.
תוצאות
כשהטעינה הושלמה חלקית, האינדיקטור הליניארי בדוגמה הקודמת מופיע כך:
כמו כן, האינדיקטור העגול מופיע כך:
יצירת אינדיקטורים לא ידועים
אינדיקטור לא ידוע לא משקף את מידת ההתקדמות של פעולה כלשהי. במקום זאת, הוא משתמש בתנועה כדי להצביע למשתמש שהעיבוד נמשך, בלי לציין את מידת ההתקדמות.
כדי ליצור אינדיקטור של התקדמות לא ידועה, משתמשים ב-composable LinearProgressIndicator
או CircularProgressIndicator
, אבל לא מעבירים ערך עבור progress
. הדוגמה הבאה מראה איך אפשר להחליף את מצב הצבעים של אינדיקטור לא ידוע בלחיצה על לחצן.
תוצאות
דוגמה להטמעה הזו כשהחיווין פעיל:
בדוגמה הבאה מוצגת אותה הטמעה, אבל עם LinearProgressIndicator
במקום CircularProgressIndicator
.
נקודות עיקריות
יש כמה רכיבים שאפשר להשתמש בהם כדי ליצור אינדיקטורים של התקדמות בהתאם ל-Material Design, אבל הפרמטרים שלהם לא שונים בהרבה. בין הפרמטרים העיקריים שחשוב לזכור:
progress
: ההתקדמות הנוכחית שמוצגת במדד. מעביריםFloat
בין0.0
ל-1.0
.color
: הצבע של המדד, כלומר החלק ברכיב שמשקף את ההתקדמות ומקיף אותו לגמרי כשההתקדמות הושלמה.trackColor
: הצבע של המסלול שבו מצויר האינדיקטור.
אוספים שמכילים את המדריך הזה
המדריך הזה הוא חלק מהאוספים הבאים של מדריכים מהירים, שמכסים יעדים רחבים יותר לפיתוח Android:
![](https://developer.android.google.cn/static/images/quick-guides/collection-illustration.png?hl=he)
הצגת רכיבים אינטראקטיביים
![](https://developer.android.google.cn/static/images/quick-guides/collection-illustration.png?hl=he)