■ImageView图像框
1.概述:用于显示Drawable对象(包括图片)的控件。
2.属性及相关方法:
src 指定显示图片的资源ID setImageResource(int)
scaleType 指定所显示的图片将如何缩放或移动以适应ImageView的大小 setScaleType(ImageView。)
scaleType的属性值:
center【对应的是:ImageView.ScaleType.CENTER 】
图几何中心与控件的重合,图不缩放而可能被剪裁。(图片可能被裁)
centerCrop【对应的是:ImageView.ScaleType.CENTER _CORP】
中心重合,只要最短边保留而原比例缩放覆盖。(长边很可能被裁除非吻合)
centerInside【对应的是:ImageView.ScaleType.CENTER_INSIDE】
心合,居中或原比例缩小后居中以被完全显示。(不会被裁)
fitCenter【对应的是:ImageView.ScaleType.FIT_CENTER】
原比例缩小或放大到宽宽吻合,居中/心合。(不会被裁)
fitStart【对应的是:ImageView.ScaleType.FIT_START】
原比例缩放到宽宽吻合,顶对齐。(可能被裁)
fitEnd【对应的是:ImageView.ScaleType.FIT_END】
原比例缩放到宽宽吻合,底对齐。(可能被裁)
fitXY【对应的是:ImageView.ScaleType.FIT_XY】
横纵向独立缩放以填满控件。
matrix【对应的是:ImageView.ScaleType.MAREIX 】
默认属性值。
显示Bitmap位图 setImageBitmap(bitmap);
显示Drawable对象 setImageDrawable(drawable);
显示资源的 setImageResource(resId);
显示连接的 setImageURI(uri);
adjustViewBounds 是否调整自己的边界来保持所显示图片的宽高比 setAdjustViewBounds(boolean)
cropToPadding 是否将自己裁剪到(缩小)保留自己的padding呢 setCropToPadding(boolean)
maxHeight 最大高度 setMaxHeight(int)
maxWidth 最大宽度 setMaxWidth(int)
3.应用:
一般用于呈现图片;
也可以当做图片按钮来监听事件,点击效果可以通过selector.xml来实现。
4.注意:
(1)有时看不见图像的可能原因如下:
一般可能是高度为0dp、或被其他View覆盖、或被挤出布局外面、或网络获取图片失败,还可能是还没设置src或background属性等等原因。
(2)scaleType失效、wrap_content没预期效果的可能原因:
scaleType失效还可能是因为用background引用图片,正确做法是使用src。