ImageView(图像视图)
1.常用属性:
setAlpha :设置透明度 (只有src时才有效果)
adjustViewBounds :设置缩放是否保存原图长宽比(单独设置不起作用)
android:maxHeight:设置ImageView的最大高度 (同样需要adjustViewBounds为true才生效)
android:maxWidth:设置ImageView的最大宽度
scaleType:设置缩放类型
fitXY:对图像的横向与纵向进行独立缩放,使得该图片完全适应ImageView,但是图片的横纵比可能会发生改变
fitStart:保持纵横比缩放图片,知道较长的边与Image的编程相等,缩放完成后将图片放在ImageView的左上角
fitCenter:同上,缩放后放于中间
fitEnd:同上,缩放后放于右下角
center:保持原图的大小,显示在ImageView的中心。当原图的size大于ImageView的size,超过部分裁剪处理
centerCrop:保持横纵比缩放图片,知道完全覆盖ImageView,可能会出现图片的显示不完全
centerInside:保持横纵比缩放图片,直到ImageView能够完全地显示图片
matrix:默认值,不改变原图的大小,从ImageView的左上角开始绘制原图, 原图超过ImageView的部分作裁剪处理
2.src属性和background属性的区别:
src:内容,按照图片大小直接填充,并不会进行拉伸
background:背景,会根据ImageView给定的宽度来进行拉伸
3.解决blackground拉伸导致图片变形的方法
创建bitmap文件,放入drawable下进行引用(android:tileMode="disabled" 禁止平铺)
实现圆角ImageView的思路
1.BitmapShader方式:着色器(画一个圆角矩形,然后把本来画上去的图像着色到圆角矩形上)
2.PorterDuffXfermode方式:图像混合模式,取相交部分(画一圆角矩形与图像相交)
3.ClipPath方式:裁剪(绘出一个圆角矩形的路径,然后用ClipPath裁剪)
注:本质都是通过圆角矩形操作,方法1和2或多或少都处理了Bitmap和Drawable,建议用方法3安全点
http://blog.csdn.net/hoyouly/article/details/52839015