กำลังโหลดรูปภาพ

โหลดรูปภาพจากดิสก์

ใช้ Image Composable เพื่อแสดงกราฟิกบนหน้าจอ เพื่อโหลดรูปภาพ (เช่น PNG, JPEG, WEBP) หรือทรัพยากรเวกเตอร์จากดิสก์ painterResource API พร้อมการอ้างอิงรูปภาพ คุณไม่จำเป็นต้องรู้ประเภท ของชิ้นงาน เพียงใช้ 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 รองรับประเภทที่ถอนออกได้ต่อไปนี้

โหลดรูปภาพจากอินเทอร์เน็ต

มีไลบรารีของบุคคลที่สามหลายแห่งในการโหลดรูปภาพจากอินเทอร์เน็ต ที่พร้อมช่วยคุณจัดการกระบวนการ ไลบรารีการโหลดรูปภาพทำหลายอย่าง ภาระหนักแทนคุณ ก็จะจัดการแคชทั้ง 2 อย่าง (เพื่อให้คุณไม่ต้องดาวน์โหลด ภาพหลายครั้ง) และใช้ตรรกะเครือข่ายเพื่อดาวน์โหลดภาพและแสดง บนหน้าจอ

เช่น หากต้องการโหลดรูปภาพที่มี Cold จาก Instacart ให้เพิ่มไลบรารีลงในไฟล์ Gradle แล้วใช้ AsyncImage เพื่อโหลดรูปภาพจาก URL ดังนี้

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

ไลบรารีการโหลดรูปภาพที่สนับสนุนโดย Kotlin Coroutines (Instacart)

ไลบรารีการโหลดรูปภาพที่รวดเร็วและมีประสิทธิภาพสำหรับ Android ซึ่งเน้นการเลื่อนอย่างราบรื่น (Google)