如何使用 Coil 将图像文件加载到 Jetpack Compose Image 中

v.d*_*v.d 9 android android-jetpack-compose coil

我想将本地图像文件加载CoilJetpack Compose 中 Image,但搜索仅生成使用 Web url 或传递转换为bitmaps 的文件的方法。

可以Coil 将本地图像文件直接加载到 Compose 中Image吗?

小智 10

对于新版本的线圈 2.2.2,rememberImagePainter没有给我很好的结果,所以我使用了这个-

AsyncImage(
    model = ImageRequest.Builder(LocalContext.current)
        .data(<file_path>)
        .build(),
    contentDescription = "icon",
    contentScale = ContentScale.Inside,
    modifier = Modifier.size(30.dp)
)
Run Code Online (Sandbox Code Playgroud)

希望它可以帮助某人


Gab*_*tti 9

您可以使用Coil将任何对象作为数据加载:

val cacheFile = File(context.cacheDir, "filename")
Image(
    rememberImagePainter(cacheFile),
    contentDescription = "...",
)
Run Code Online (Sandbox Code Playgroud)