[Android] ImageView.ScaleType 设置图解
来源:互联网 发布:sql语句执行顺序 编辑:程序博客网 时间:2024/06/04 18:10
ImageView的Scaletype决定了图片在View上显示时的样子,如进行何种比例的缩放,及显示图片的整体还是部分,等等。
设置的方式包括:
1. 在layout xml中定义android:scaleType="CENTER"
2. 或在代码中调用imageView.setScaleType(ImageView.ScaleType.CENTER);
接下来,将对ScaleType的值和对应的显示效果用最直观的方式——真图演示的方法,来进行说明。
首先,是测试使用的原始图片:
(Dimensions: 128 * 128)
(Dimensions: 640 * 428)
好,开始下面的测试:
1. SetScaleType(ImageView.ScaleType.CENTER);
按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示
2. SetScaleType(ImageView.ScaleType.CENTER_CROP);
按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽)
3. setScaleType(ImageView.ScaleType.CENTER_INSIDE);
将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽
4. setScaleType(ImageView.ScaleType.FIT_CENTER);
把图片按比例扩大/缩小到View的宽度,居中显示
5. FIT_START, FIT_END在图片缩放效果上与FIT_CENTER一样,只是显示的位置不同,FIT_START是置于顶部,FIT_CENTER居中,FIT_END置于底部。
在此就不给出示例了。
6. FIT_XY
不按比例缩放图片,目标是把图片塞满整个View。
---------------------------------------------------------------------------------------------------------------------------------------------
使用ImageView时经常会用到scaleType属性,如:
<ImageView android:layout_width="50dp"
android:layout_height="50dp"
android:scaleType="matrix"
android:src="@drawable/sample_small" />
scaleType属性的各个值总是记不住之间的区别。今天找点时间总结了一下:
scaleType的属性值有:matrix fitXY fitStart fitCenter fitEnd center centerCrop centerInside
它们之间的区别如下:
center 按图片的原来size居中显示,当图片宽超过View的宽,则截取图片的居中部分显示,当图片宽小于View的宽,则图片居中显示
centerCrop 按比例扩大/缩小图片的size居中显示,使得图片的高等于View的高,使得图片宽等于或大于View的宽
centerInside 将图片的内容完整居中显示,使得图片按比例缩小或原来的大小(图片比View小时)使得图片宽等于或小于View的宽 (图片会完整显示)
图1: 图片比ImageView大的截图
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- [Android] ImageView.ScaleType设置图解
- 我只能送你笑话了
- Tomcat会话超时时如何记录操作日志,满足安全审计要求
- 我是没审核不通过
- Python你必须知道的十个库
- 法定人数格式热覆盖色弱若5
- [Android] ImageView.ScaleType 设置图解
- android http文件上传工具类
- jquery 实现的弹窗
- ORACLE常用表
- Python中定义“私有”成员变量和成员函数
- linux下tomcat ssl配置
- WeChall Training: ASCII
- 阿里云Ubuntu部署java web(3) - 配置mysql
- vc中ASSERT()和VERIFY()区别