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

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

استخدِم الدالة المركّبة 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).

مراجع إضافية