如何在 Compose Image 中显示位图

问题描述 投票:0回答:3

我有一个返回位图(“包含”QR 码)的函数,我想在

Image
(可组合函数)中显示该位图,但我没有找到任何方法将位图转换为
 ImageBitmap
或仅显示该位图。

android android-jetpack-compose android-bitmap android-image
3个回答
54
投票

基于这篇博文,应该可以显示这样的位图:

@Composable
fun BitmapImage(bitmap: Bitmap) {
    Image(
        bitmap = bitmap.asImageBitmap(),
        contentDescription = "some useful description",
    )
}

我自己还没有尝试过,但最近在研究使用 Jetpack Compose 显示地图时看到了这篇博客文章。


12
投票

线圈能够在

Bitmap
内显示
Image
:

Image(
    painter = rememberAsyncImagePainter(imageBitmap),
    contentDescription = null,
)

1
投票

总结并更新答案)

Compose 中有多个显示位图的选项

  1. 使用图像

    图像( 位图 = 位图.asImageBitmap(), ...)

  2. 使用线圈AsyncImage

    AsyncImage(模型 = 位图, ...)

如果您在使用 AsyncImage 时出现 Unsupported bla bla 异常,请检查您是否使用的是 Bitmap 而不是 ImageBitmap

© www.soinside.com 2019 - 2024. All rights reserved.