我正在使用 Coil 在 Jetpack Compose 中加载远程图像,但我遇到了一个奇怪的问题。
这是我正在使用的代码:
Column() {
Image(
painter = rememberImagePainter(
data = recipe.featuredImage,
builder = {
crossfade(true)
placeholder(R.drawable.empty_plate)
}
),
modifier = Modifier
.fillMaxWidth()
.height(225.dp),
contentScale = ContentScale.Crop,
contentDescription = null
) ....}
当我将交叉淡入淡出设置true
为图像时,不会裁剪或拉伸以适合宽度。但是,当交叉淡入淡出时false
,图像会被正确裁剪以适合宽度。
奇怪的是,当我将图像滚动出屏幕然后将图像滚动回屏幕时,即使将 Crossfade 设置为 ,它也会正确裁剪true
。
图像 A -图像未正确显示, 图像 B -我需要的正确显示。
我想使用交叉淡入淡出,因为图像需要一些时间来加载,并且我想在屏幕第一次加载时显示图像,而不是用户必须向下滚动才能正确显示图像。
环顾四周,但无法弄清楚如何解决这个问题,有什么线索吗?