डिस्क से इमेज लोड करना
स्क्रीन पर ग्राफ़िक दिखाने के लिए, Image
कॉम्पोज़ेबल का इस्तेमाल करें. डिस्क से कोई इमेज (उदाहरण के लिए: PNG, JPEG, WEBP) या वेक्टर संसाधन लोड करने के लिए, अपनी इमेज के रेफ़रंस के साथ painterResource
एपीआई का इस्तेमाल करें. आपको एसेट के टाइप के बारे में जानने की ज़रूरत नहीं है. बस Image
या paint
मॉडिफ़ायर में painterResource
का इस्तेमाल करें.
DrawScope
:
Image( painter = painterResource(id = R.drawable.dog), contentDescription = stringResource(id = R.string.dog_content_description) )
यह पक्का करने के लिए कि आपका ऐप्लिकेशन ऐक्सेस किया जा सकता है, स्क्रीन पर विज़ुअल एलिमेंट के लिए contentDescription
दें. TalkBack, कॉन्टेंट की जानकारी को पढ़कर सुनाता है. इसलिए, आपको यह पक्का करना होगा कि टेक्स्ट को तेज़ आवाज़ में पढ़कर सुनाने और उसका अनुवाद करने पर, वह समझ में आए. ऊपर दिए गए उदाहरण में, strings.xml
फ़ाइल से अनुवाद किए गए कॉन्टेंट की जानकारी को लोड करने के लिए, stringResource()
का इस्तेमाल किया गया है. अगर स्क्रीन पर मौजूद आपका विज़ुअल एलिमेंट, सिर्फ़ विज़ुअल डेकोरेशन के लिए है, तो स्क्रीन रीडर को उसे अनदेखा करने के लिए, contentDescription
को null
पर सेट करें.
अगर आपको ImageBitmap
के किसी खास फ़ंक्शन की ज़रूरत है, तो बिटमैप लोड करने के लिए ImageBitmap.imageResource()
का इस्तेमाल किया जा सकता है. ImageBitmaps के बारे में ज़्यादा जानकारी के लिए, ImageBitmap बनाम ImageVector सेक्शन पढ़ें.
ड्रॉ किए जा सकने वाले आइटम
painterResource
फ़िलहाल, इन ड्रॉबल टाइप के साथ काम करता है:
AnimatedVectorDrawable
BitmapDrawable
(PNG, JPG, WEBP)ColorDrawable
VectorDrawable
इंटरनेट से कोई इमेज लोड करना
इंटरनेट से इमेज लोड करने के लिए, तीसरे पक्ष की कई लाइब्रेरी उपलब्ध हैं. इनकी मदद से, इमेज लोड करने की प्रोसेस को मैनेज किया जा सकता है. इमेज लोड करने वाली लाइब्रेरी, आपके लिए बहुत से काम करती हैं. ये कैश मेमोरी (ताकि आपको इमेज को कई बार डाउनलोड न करना पड़े) और नेटवर्क लॉजिक, दोनों को मैनेज करती हैं. इससे इमेज को डाउनलोड करके स्क्रीन पर दिखाया जा सकता है.
उदाहरण के लिए, Instacart से Coil की मदद से इमेज लोड करने के लिए, लाइब्रेरी को अपनी gradle फ़ाइल में जोड़ें. साथ ही, यूआरएल से इमेज लोड करने के लिए AsyncImage
का इस्तेमाल करें:
AsyncImage( model = "https://example.com/image.jpg", contentDescription = "Translated description of what the image contains" )
कॉइल
Kotlin कोरूटीन (Instacart) की मदद से इमेज लोड करने वाली लाइब्रेरी.
Glide
Android के लिए तेज़ और असरदार इमेज लोड करने वाली लाइब्रेरी, जो आसानी से स्क्रोल करने पर फ़ोकस करती है (Google).
आपके लिए सुझाव
- ध्यान दें: JavaScript बंद होने पर लिंक टेक्स्ट दिखता है
- Compose में संसाधन
- Compose में सुलभता
- Compose में ग्राफ़िक जोड़ना