ImageView的scaleType的属性理解

ImageView的scaleType的属性值详解

看了好多ImageView关于scaleType属性的讲解,但是总感觉有些不太准确,自己试验了一下。做下总结!

MATRIX
FIT_XY
FIT_START
FIT_END
FIT_CENTER
CENTER
CENTER_CROP
CENTER_INSIDE

详解
注:下文中长边指的是已图片中心点和ImageView中心点为基准,在放大或缩小过程中宽或高先达到ImageView边界的边
短边则相反

1.android:scaleType=“center”
保持原图的大小,显示在ImageView的中心,不缩放。当原图的size大于ImageView的size时,多出来的部分被截掉。

2.android:scaleType=“center_inside”
以原图正常显示为目的,
1、如果原图size小于ImageView的size,则不做处理居中显示图片。
2、如果原图大小大于ImageView的size,就等照比例缩小原图的宽高,直到长边达到ImageView边界,多余部分裁剪。居中显示在ImageView中。

3.android:scaleType=“center_crop”
以原图填满ImageView为目的。
1、如果原图size大于ImageView的size,则等比例缩小图片,直到图片长边到达边界,其余部分被裁剪,居中显示在ImageView上。
2、如果原图size小于ImageView的size,则等比例拉升图片,直到图片短边到达边界,其余部分被裁剪,居中显示在ImageView上。
总结:
图片等比例缩放,不会被拉伸。在放大或缩小时都会填满ImageView

4.android:scaleType=“matrix”
不改变原图的大小,从ImageView的左上角开始绘制,超出部分做剪切处理。

5.androd:scaleType=“fit_xy”
把图片按照指定的大小在ImageView中显示,拉伸显示图片,不保持原比例,填满ImageView.

6.android:scaleType=“fit_start”
把原图等比例放大缩小到ImageView的高度,显示在ImageView的start(横图上部/竖图左部)。

7.android:sacleType=“fit_center”
已原图正常显示为目的
1、如果原图size大于ImageView的size,则等比例缩小图片,直到图片短边到达边界,其余部分被裁剪,居中显示在ImageView上。
2、如果原图size小于ImageView的size,则等比例拉升图片,直到图片长边到达边界,其余部分被裁剪,居中显示在ImageView上。
总结:
图片等比例缩放,不会被拉伸。无论放大或缩小时都会保证将图片完整的显示在ImageView中,且长或宽有一边到达ImageView边界。不一定填满ImageView。

8.android:scaleType=“fit_end”
把原图等比例放大缩小到ImageView的高度,显示在ImageVIew的end(横图底部/竖图右部)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值