Android开发9:UI组件ImageView
版本:Android4.3 API18 学习整理:liuxinming概述ImageView继承自View组件,主要用于显示图片任何Drawable对象都可使用ImageView来显示例如图标。ImageView类可以加载各种来源的图片(如资源或图片库),需要计算图像的尺寸,比便它可以在其他布局中使用,并提供例如缩放和着色(渲染)各种显示选项。
从上面类图关系可以看出,ImageView派生了ImageButton、QuickContactBadge等组件1、ImageButton:图片按钮 ImageButton派生了ZoomButton,代表放大,缩小两个按钮 android默认提供了: btn_minus btn_plus 两个Drawable资源,只要为ZommButton的android:src属性指定以上两个属性,即可实现 放大、缩小按钮。2、QuickContactBadge:显示关联到特定联系人的图片
更多公共方法请参阅官方API
http://developer.android.com/reference/android/widget/ImageView.html
XML属性XML属性相关方法说明android:adjustViewBoundssetAdjustViewBounds(boolean)设置ImageView是否调整自己的边界来保持所显示图片的长宽比android:baselinesetBaseline(int)视图内基线的偏移量android:baselineAlignBottomsetBaselineAlignBottom(boolen)ture=图像的视图将基线对齐于其底部边缘android:cropToPaddingsetCropToPadding(boolean)如果将该属性设为true,该组件将会被裁剪到保留该ImageView的paddingadnroid:maxheightsetMaxHeight(int)设置ImageView的最大高度
为视图提供最大高度的可选参数。(译者注:单独使用无效,需要与setAdjustViewBounds一起使用。如果想设置图片固定大小,又想保持图片宽高比,需要如下设置:
1) 设置setAdjustViewBounds为true;
2) 设置maxWidth、MaxHeight;
3) 设置设置layout_width和layout_height为wrap_content。)
控制为了使图片适合 ImageView 的大小,应该如何变更图片大小或移动图片。一定是下列常量之一:
常量
值
描述
matrix
0
用矩阵来绘图
fitXY
1
拉伸图片(不按比例)以填充View的宽高
fitStart
2
按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的左边
fitCenter
3
按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的中间
fitEnd
4
按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的右边
center
5
按原图大小显示图片,但图片宽高大于View的宽高时,截图图片中间部分显示
centerCrop
6
按比例放大原图直至等于某边View的宽高显示。
centerInside
7
当原图宽高或等于View的宽高时,按原图大小居中显示;反之将原图缩放至View的宽高居中显示。