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

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

استخدِم العنصر القابل للإنشاء 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() لتحميل صورة نقطية. لمزيد من المعلومات حول ImageBitmaps، يُرجى قراءة قسم ImageBitmap مقابل ImageVector.

توافق العناصر القابلة للرسم

يتوافق painterResource مع أنواع العناصر القابلة للرسم التالية:

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

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

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

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

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

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

مراجع إضافية