我分不清 和 之间的ImageView.ScaleType.CENTER_INSIDE
区别ImageView.ScaleType.FIT_CENTER
。
CENTER_INSIDE
均匀缩放图像(保持图像的纵横比),使图像的两个尺寸(宽度和高度)都等于或小于视图的相应尺寸(减去填充)。
FIT_CENTER
计算将保持原始 src 纵横比的比例,但也将确保 src 完全适合 dst。至少一个轴(X 或 Y)将完全适合。结果以 dst 为中心。
有人可以阐明两者之间的区别吗?
我分不清 和 之间的ImageView.ScaleType.CENTER_INSIDE
区别ImageView.ScaleType.FIT_CENTER
。
CENTER_INSIDE
均匀缩放图像(保持图像的纵横比),使图像的两个尺寸(宽度和高度)都等于或小于视图的相应尺寸(减去填充)。
FIT_CENTER
计算将保持原始 src 纵横比的比例,但也将确保 src 完全适合 dst。至少一个轴(X 或 Y)将完全适合。结果以 dst 为中心。
有人可以阐明两者之间的区别吗?
CENTER_INSIDE
这是和之间区别的图形说明FIT_CENTER
。
两者都CENTER_INSIDE
缩小FIT_CENTER
图像。
CENTER_INSIDE
不放大图像,FIT_CENTER
可以。
Android 机器人是从 Google 创建和共享的作品中复制或修改的,并根据知识共享 3.0 署名许可中描述的条款使用。
FIT_CENTER 将确保源完全适合容器内部,并且水平轴或垂直轴都将是准确的。
CENTER_INSIDE 将使图像在容器内居中,而不是使边缘完全匹配。
因此,如果您有一个 10" x 10" 的方形框和一个 8"x8" 的图像,则 CENTER_INSIDE 将直接位于框的中间,源容器和目标容器之间为 2"。
使用 FIT_CENTER,上例中的相同图像将适合整个容器,因为边相等,并且一个轴将匹配目标。使用 FIT_CENTER,如果您有一个 5" x 10" 的框和一个 5" x 7" 的图像,图像将按比例缩放,因此其中一个轴将适合,但仍会将图像居中在目的地。
它们是相似的,但制作一个是为了使源尽可能地填充目标,而另一个只是将图像居中放置在目标内部。
希望澄清一点
如果图像大于容器,它们是相同的。如果图像较小,则容器 CENTER_INSIDE 不会放大图像,而 FIT_CENTER 会。