Android 毕加索和线圈在图像大小上不一致?
第一个截图是毕加索的,第二个截图是线圈的(都是最新版本)。知道为什么会这样吗 毕加索:Android 毕加索和线圈在图像大小上不一致?,android,kotlin,picasso,coil,Android,Kotlin,Picasso,Coil,第一个截图是毕加索的,第二个截图是线圈的(都是最新版本)。知道为什么会这样吗 毕加索:fit().centerInside() 线圈:scale(scale.FILL)。crossfade(true)(我也尝试了FIT,结果相同) ImageView:adjustViewBounds=true;scaleType=中间\u in,具有匹配的父宽度和恒定的高度(以像素为单位) 线圈自动调整到图像视图的比例类型,因此您无需配置比例 毕加索没有,毕加索的.fit().centerInside()实际
fit().centerInside()
线圈:scale(scale.FILL)。crossfade(true)
(我也尝试了FIT,结果相同)
ImageView:adjustViewBounds=true;scaleType=中间\u in
,具有匹配的父宽度和恒定的高度(以像素为单位)
线圈自动调整到
图像视图的比例类型,因此您无需配置比例
毕加索没有,毕加索的.fit().centerInside()
实际上并不等同于ImageView
的CENTER\u INSIDE
,而是fit\u CENTER
(它将放大图像,使至少一个维度与ImageView
匹配)。毕加索没有与之相当的CENTER_INSIDE
,但这些是最接近的选项:
- 您只需删除
.fit().centerInside()
,并让图像视图缩小图像(如果图像较大),但如果图像非常大,则会消耗大量内存(如果大于设备的最大纹理大小,则可能无法加载)
- 手动测量图像视图的大小后,可以使用
.resize(width,height).centerInside().onlyScaleDown()
如果您想像毕加索使用.fit().centerInside()
一样调整图像大小,只需将图像视图的缩放类型更改为fit\u CENTER