Android] ImageView.ScaleType设置图解
来源:互联网 发布:淘宝开店认证要多久 编辑:程序博客网 时间:2024/06/05 19:38
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。
android ImageView scaleType属性
使用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大的截图
======================================================================
声明:
本博客文章可随意转载,但必须保留本段声明和每一篇文章的原始地址。
作者保留版权,未经作者同意,不得用于任何商业用途
原始地址: http://blog.csdn.net/xilibi2003/article/details/6628668
- [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设置图解
- 留学垃圾--葡桃
- poj3667 (线段树区间合并)
- [Java Web]Hibernate基础总结(二)
- gcc学习(一)[第二版]
- Linux文件系统十问,你知道吗?
- Android] ImageView.ScaleType设置图解
- 只会CSS还不够,LESS、SASS、BootStrap、Foundation一网打尽!
- Linux 下rm+grep删除除去指定文件的剩余所有文件
- void指针
- XMPP协议的原理介绍
- 分治排序(2)
- Partition List
- A*寻路算法的lua实现
- java线程 生产者与消费者