התמונות בטעינה

טעינת תמונה מהדיסק

אפשר להשתמש בתוכן הקומפוזבילי Image כדי להציג גרפיקה על המסך. כדי לטעון תמונה (לדוגמה: PNG, JPEG, WEBP) או משאב וקטורי מהדיסק, משתמשים ברכיב painterResource API עם ההפניה לתמונה. אין צורך לדעת מה הסוג של הנכס, פשוט צריך להשתמש ב-painterResource במקשי הצירוף Image או paint.

DrawScope:

Image(
    painter = painterResource(id = R.drawable.dog),
    contentDescription = stringResource(id = R.string.dog_content_description)
)

כדי להבטיח שהאפליקציה נגישה, צריך לציין contentDescription עבור רכיבים חזותיים במסך. התכונה TalkBack מקריאה את תיאור התוכן, חייב להבטיח שהטקסט בעל משמעות אם קוראים אותו בקול ומתרגמים. ב בדוגמה שלמעלה, stringResource() משמש לטעינת התוכן המתורגם מהקובץ strings.xml. אם הרכיב החזותי במסך הוא רק לקישוטים חזותיים, הגדירו את contentDescription ל-null בקורא המסך כדי להתעלם ממנו.

אם דרושה לך פונקציונליות ספציפית ל-ImageBitmap ברמה נמוכה יותר, אפשר להשתמש ב- ImageBitmap.imageResource() כדי לטעון מפת סיביות (Bitmap). מידע נוסף על ImageBitmaps, קראו את הקטע ImageBitmap לעומת ImageVector.

תמיכה לשרטוט

painterResource תומך כרגע בסוגים הבאים של פריטים שניתנים להזזה:

טעינת תמונה מהאינטרנט

כדי לטעון תמונה מהאינטרנט, יש כמה ספריות של צד שלישי זמין כדי לעזור לך בתהליך. ספריות לטעינת תמונות עושות הרבה שימוש העבודה הקשה בשבילך, הם מטפלים גם בשמירה במטמון (כך שלא מורידים את תמונה מספר פעמים) ולוגיקת רשתות כדי להוריד את התמונה ולהציג אותה על המסך.

לדוגמה, כדי לטעון תמונה עם Coil מ-Instacart, מוסיפים את הספרייה לקובץ רמות הדירוג ומשתמשים ב-AsyncImage כדי לטעון תמונה מכתובת URL:

AsyncImage(
    model = "https://example.com/image.jpg",
    contentDescription = "Translated description of what the image contains"
)

ספרייה לטעינת תמונות שמגובה על ידי Kotlin Coroutines (Instacart).

ספרייה לטעינת תמונות מהירה ויעילה ל-Android, שמתמקדת בגלילה חלקה (Google).