Android中的ImageView的设置

对于XML中的设置不提,只讲在Java中的设置

参考如下的文字

1、ScaleType.CENTER(对应xml文件中为android:scaleType="center")

图片将位于View的中间显示,但不进行缩放,如果图片大小大于ImageView控件,则截取图片中间部分;若小于,则直接将图片居中显示。

2、ScaleType.FIT_CENTER(对应xml文件中为android:scaleType="fitCenter")
ImageView的默认状态,大图等比例缩小,使整幅图能够居中显示在ImageView中;小图等比例放大,同样要整体居中显示在ImageView中。

3、ScaleType.CENTER_CROP(对应xml文件中为android:scaleType="centerCrop")
让图像的短边与ImageView对应的边长度保持一致(可能是放大或缩小),然后按照短边放大或缩小的比例对图像的另外一边进行同比例放大或缩小。
注意:这不像FIT_CENTER会等比缩放。会导致图片缩放后长、宽比例与原来的不一致。
最后截取缩放后图片的中间部分显示。
这在有些场景下还是有用的,比如需要图片充满整个ImageView,但对缩放后失真或截取部分图片可以忍受。

4、ScaleType.FIT_XY(对应xml文件中为android:scaleType="fitXY")

将图片非等比例缩放到大小与ImageView相同。相比CENTER_CROP,这样既能保证图片充满整个ImageView. 又能保证长和宽的缩放相互不影响。

虽然也可能会导致比例缩放不一致,但最后不会导致图像被裁减。


5、ScaleType.CENTER_INSIDE(对应xml文件中为android:scaleType="centerInside")
将图片大小大于ImageView的图片进行等比例缩小,直到整幅图能够居中显示在ImageView中;小于ImageView的图片不变,直接居中显示,不放大。
对于尺寸大于ImageView的图片,效果等同FIT_CENTER,都是等比缩小。

6、还有其它几种情况,不太常用,这里简单说下

     ScaleType.FIT_END:缩放方式同FIT_CENTER,只是将图片显示在右方或下方,而不是居中。

  ScaleType.FIT_START:缩放方式同FIT_CENTER,只是将图片显示在左方或上方,而不是居中。

  ScaleType.MATRIX:是根据一个3x3的矩阵对其中图片进行缩放

【摘】http://www.bubuko.com/infodetail-489645.html

上面的对于XML而言,不过在其上面加上set即可用在Java中

                ImageView logo=new ImageView(MainActivity.this);
                logo.setScaleType(ImageView.ScaleType.FIT_START);


对于第二种方法setpadding,【暂时未了解到】


csdn上有第三种方法,先记与下面

//对布局控件添加相对属性
RelativeLayout.LayoutParams param = new RelativeLayout.LayoutParams(宽度,高度);
//添加规则,示例 靠父控件最右边
param.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
//如果相对某个控件
param.addRule(RelativeLayout.LEFT_OF,某个ID号);
//添加控件
addView(imageview,param)
【摘】http://bbs.csdn.net/topics/390383952

你可能感兴趣的:(Android中的ImageView的设置)