android – CENTER_INSIDE和FIT_CENTER比例类型有什么区别?

我无法分辨ImageView.ScaleType.CENTER_INSIDE和ImageView.ScaleType.FIT_CENTER之间的区别.

CENTER_INSIDE

Scale the image uniformly (maintain the image’s aspect ratio) so that both dimensions (width and height) of the image will be equal to or less than the corresponding dimension of the view (minus padding).

FIT_CENTER

Compute a scale that will maintain the original src aspect ratio, but will also ensure that src fits entirely inside dst. At least one axis (X or Y) will fit exactly. The result is centered inside dst.

有人可以阐明两者之间的差异吗?

解决方法:

FIT_CENTER将确保源完全适合容器内部,水平轴或垂直轴将是精确的.

CENTER_INSIDE将图像置于容器内部,而不是使边缘完全匹配.

所以如果你有一个10“x 10”的方框和一个8“x8”的图像,CENTER_INSIDE将直接位于包装盒的中间,在源和目标容器之间有2“.

使用FIT_CENTER,上面示例中的相同图像将适合整个容器,因为两侧相等,并且一个轴将匹配目标.使用FIT_CENTER,如果你有一个5“x 10”的盒子和一个5“x 7”的图像,图像将按比例缩放,因此其中一个轴适合,但仍然会将图像置于其中心.目的地.

它们是相似的,但是一个是这样的,即源将尽可能地填充目的地,而另一个只是将图像居中在目的地内.

希望澄清一点

上一篇:android – 我可以添加GIF格式图像作为启动画面


下一篇:android – 图像下载代码适用于所有图像格式,PNG格式渲染问题