इमेज लोड हो रही हैं

डिस्क से कोई इमेज लोड करना

स्क्रीन पर ग्राफ़िक दिखाने के लिए, Image कंपोज़ेबल का इस्तेमाल करें. डिस्क से कोई इमेज (उदाहरण के लिए: PNG, JPEG, WEBP) या वेक्टर रिसॉर्स लोड करने के लिए, painterResource API का इस्तेमाल करें. इसके लिए, आपको इमेज का रेफ़रंस देना होगा. आपको ऐसेट के टाइप के बारे में जानने की ज़रूरत नहीं है. बस Image या paint मॉडिफ़ायर में painterResource का इस्तेमाल करें.

DrawScope:

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

यह पक्का करने के लिए कि आपका ऐप्लिकेशन ऐक्सेस किया जा सके, स्क्रीन पर मौजूद विज़ुअल एलिमेंट के लिए contentDescription उपलब्ध कराएं. TalkBack, कॉन्टेंट के ब्यौरे को पढ़कर सुनाता है. इसलिए, आपको यह पक्का करना होगा कि टेक्स्ट को पढ़कर सुनाने और उसका अनुवाद करने पर, वह सही मतलब दे. ऊपर दिए गए उदाहरण में, stringResource() का इस्तेमाल करके strings.xml फ़ाइल से, अनुवाद किए गए कॉन्टेंट की जानकारी लोड की गई है. अगर स्क्रीन पर मौजूद आपका विज़ुअल एलिमेंट सिर्फ़ सजावट के लिए है, तो contentDescription को null पर सेट करें, ताकि स्क्रीन रीडर इसे अनदेखा कर सके.

अगर आपको ImageBitmap की खास सुविधा का इस्तेमाल करना है, तो Bitmap को लोड करने के लिए ImageBitmap.imageResource() का इस्तेमाल किया जा सकता है. ImageBitmap के बारे में ज़्यादा जानने के लिए, ImageBitmap बनाम ImageVector सेक्शन पढ़ें.

ड्रॉएबल सपोर्ट

painterResource फ़िलहाल, इन ड्रॉएबल टाइप के साथ काम करता है:

इंटरनेट से कोई इमेज लोड करना

इंटरनेट से इमेज लोड करने के लिए, तीसरे पक्ष की कई लाइब्रेरी उपलब्ध हैं. इनकी मदद से, इस प्रोसेस को मैनेज किया जा सकता है. इमेज लोड करने वाली लाइब्रेरी, आपके लिए कई काम करती हैं. ये लाइब्रेरी, इमेज को कैश मेमोरी में सेव करने की सुविधा देती हैं, ताकि आपको इमेज को कई बार डाउनलोड न करना पड़े. साथ ही, ये इमेज को डाउनलोड करने और उसे स्क्रीन पर दिखाने के लिए, नेटवर्किंग लॉजिक को मैनेज करती हैं.

उदाहरण के लिए, Instacart से Coil का इस्तेमाल करके कोई इमेज लोड करने के लिए, अपनी gradle फ़ाइल में लाइब्रेरी जोड़ें. इसके बाद, यूआरएल से कोई इमेज लोड करने के लिए AsyncImage का इस्तेमाल करें:

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

यह इमेज लोड करने वाली लाइब्रेरी है. इसे Kotlin Coroutines (Instacart) की मदद से बनाया गया है.

Android के लिए, इमेज को तेज़ी से और असरदार तरीके से लोड करने वाली लाइब्रेरी. यह लाइब्रेरी, स्क्रोलिंग को बेहतर बनाने पर फ़ोकस करती है (Google).

अन्य संसाधन