جارٍ تحميل الصور

تحميل صورة من القرص

استخدِم العنصر القابل للتجميع Image لعرض رسم على الشاشة. لتحميل صورة (مثل PNG أو JPEG أو WEBP) أو مرجع رسومات متحركة من القرص، استخدِم واجهة برمجة التطبيقات painterResource مع مرجع الصورة. لست بحاجة إلى معرفة نوع مادة العرض، ما عليك سوى استخدام 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. لمزيد من المعلومات عن ImageBitmap، يُرجى الاطّلاع على قسم ImageBitmap مقارنةً بـ ImageVector.

إتاحة استخدام عناصر قابلة للرسم

تتيح painterResource حاليًا أنواع الرسومات التالية:

تحميل صورة من الإنترنت

لتحميل صورة من الإنترنت، تتوفّر عدة مكتبات تابعة لجهات خارجية لمساعدتك في تنفيذ هذه العملية. تُنفِّذ مكتبات تحميل الصور الكثير من المهام الصعبة نيابةً عنك، فهي تتعامل مع ذاكرة التخزين المؤقت (كي لا تضطر إلى تنزيل الصورة عدة مرات) ومنطق الاتصال بالشبكة لتنزيل الصورة وعرضها على الشاشة.

على سبيل المثال، لتحميل صورة باستخدام Coil من Instacart، أضِف المكتبة إلى ملف gradle، واستخدِم AsyncImage لتحميل صورة من عنوان URL:

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

مكتبة لتحميل الصور تستند إلى Kotlin Coroutines (Instacart)

مكتبة سريعة وفعّالة لتحميل الصور على أجهزة Android تركّز على الانتقال السلس (Google)