ברוכים הבאים
להשתלמות בהנדסת התכנה
(Android)
הצגת נתונים רבים
(ListView)
הצגת הרבה נתונים (ListView)
הרבה פעמים יש צורך בהצגת קבוצה גדולה של נתונים – גדולה כל כך, שאין מספיק מקום במסך, כדי לנציג את כל הנתונים.
במערכת אנדרואיד קיימים רכיבים המאפשרים להציג את הקבוצה הגדולה של נתונים ולגלגל (לגלל, להזיז) אותם, על מנת להגיע לכל נתון בקבוצה.
הרכיב הפשוט ביותר
(ובהרבה מקרים גם נוח ביותר)
הוא רכיב ListView.
הצגת הרבה נתונים (ListView)
ListView
Spinner
RecyclerView
קיימים גם רכיבים נוספים,
כמו Spinner ו-RecyclerView,
כאשר לכל אחת יש יתרונות וחסרונות.
הצגת הרבה נתונים (ListView)
שימוש בכל הרכיבים האלה עושים במקרים כאשר יש צורך להציג כמות די גדולה של נתונים:
רשימת רחובות, תלמידים,
דירות למכירה, טיסות, שירים...
הצגת הרבה נתונים (ListView)
באופן ככלי שימוש בהם תמיד מבוסס
על שלישת ה"פילים":
רכיב + מתאם + נתונים
הצגת הרבה נתונים (ListView)
הצגת הרבה נתונים (ListView)
מוסיפים רכיב
הצגת הרבה נתונים (ListView)
בהפעלת האפליקציה
לא רואים רכיב
כול עוד
לא מחוברים אליו
נתונים
הצגת הרבה נתונים (ListView)
הצגת הרבה נתונים (ListView)
בנה אפליקציה אשר יוצרת ומציגה
עצמים עם מידע על "נקודות על מערכת צירים".
אפליקציה גם צריכה לאפשר הצגת מידע מפורטת על כל "נקודה", כאשר משתמש בוחר אחת מה"נקודות".
הצגת הרבה נתונים (ListView)
הצגת הרבה נתונים (ListView)
הצגת הרבה נתונים (ListView)
הצגת הרבה נתונים (ListView)
"מחלקים" מסך "שווה-שווה"
בין שתי תסדירים
הצגת הרבה נתונים (ListView)
לתוך LinearLayout שמאלי
מכניסים רכיב מסוג
ListView
הצגת הרבה נתונים (ListView)
לתוך LinearLayout ימיני
מכניסים רכיב מסוג
Button
הצגת הרבה נתונים (ListView)
לתוך LinearLayout שמאלי
מכניסים רכיב מסוג
ListView
הצגת הרבה נתונים (ListView)
יוצרים מערך
"נקודות"
הצגת הרבה נתונים (ListView)
יוצרים "מתאם"
(adapter)
הצגת הרבה נתונים (ListView)
יוצרים "מתאם"
(adapter)
עבור אקטיביטי זאת
משתמשים בקובץ xml הקיים במערכת
מחברים "מתאים" לקבוצת נתונים
הצגת הרבה נתונים (ListView)
מצרפים "מתאם"
(adapter)
לרכיב מסוג
ListView
לרכיב ListView...
...מחברים...
..."מתאם"
מערך
רשימה
[ ]
ArrayList<>
ListView
ArrayAdapter
הצגת הרבה נתונים (ListView)
הצגת הרבה נתונים (ListView)
אחרי לחיצה
מקבלים רשימה
של שמות הנקודות
הצגת הרבה נתונים (ListView)
אפשר לקבל, כמובן,
רשימה של פרטי נקודות.
אבל זה הרבה פחות נוח
הצגת הרבה נתונים (ListView)
אפשר לקבל, כמובן,
רשימה של פרטי נקודות.
אבל זה הרבה פחות נוח,
גם כאשר "מחזקים"
קווי הפרדה
הצגת הרבה נתונים (ListView)
עדיף להשתמש
בהצגת פרטי נקודה
אחר לחיצה על שם הנקודה
"מאזין" מפעיל "פעולת חובה" onItemClick
אשר מכילה פרמטר i המציין
"מספר סידורי" (index) של ערך בקבוצת נתונים
הצגת הרבה נתונים (ListView)