Adroid 之 ImageView属性详解

ImageView属性详解:
注:测试图片比例为:156*135

属性1:
adnroid:scaleType ——>控制图片如何resized/moved来匹对  ImageView的size;

android:scaleType值的含义以及效果示意图:
* center 按图片本来的大小进行显示,当图片长/宽超过ImageView的固定长宽的时候则截取图片居中部分显示:
xml源码:
<ImageView 
            android:src="@drawable/a"
            android:scaleType="centerInside"
            android:background="#7FFF00"
            android:layout_width="60dp"
            android:layout_height="90dp"
            />

如图:1、长宽没有超过ImageView的时候:

      2、长宽超过ImageView的时候:


* centercrop 按比例扩大图片的size居中显示,使得图片长宽等于或大于ImageView的长(宽:并不能同时的满足);
		xml源码:
			<ImageView 
            android:src="@drawable/a"
            android:scaleType="centerInside"
            android:background="#7FFF00"
            android:layout_width="200dp"
            android:layout_height="300dp"
            />

如图:
1、


* centerinside   将图片的内容完整居中显示,通过按比例缩小或原来的size使图片长宽等于或小于ImgeView的长(宽);
xml源码:
			<ImageView 
            android:src="@drawable/a"
            android:scaleType="centerInside"
            android:background="#7FFF00"
            android:layout_width="60dp"
            android:layout_height="90dp"
            />

如图:
1、



* fitCenter  把图片按比例扩大/缩小到ImageView的宽度,居中显示:(和centerInside不同的是:fitCenter操作后只要一边满足要求即可;
              即:操作后的(长/宽)size不可能大于View(长/宽))
* fitEnd     把图片按比例扩大/缩小到ImageView的宽度,显示在下方;
* fitStart   把图片按比例扩大/缩小到ImageView的宽度,显示在上方;
xml源码:
 android:scaleType="fitCenter"
			 android:scaleType="fitStart"
			 android:scaleType="fitEnd"

效果图:
1、
2、
3、



* fitXY 把图片 不按比例 扩大/缩小到View的大小显示; 即:完全的填满了组件
xml源码:

效果图:
1、


* matrix 用矩阵来绘制:(用途:用户可以对图片进行放大缩小的操作,具体代码java中实现)
效果图:
1、


属性2:android:adjustViewBounds -->是否保持宽高比,需要结合maxWidth、MaxHeight一起使用
否则单独使用没有效果;

属性3:android:maxHeight -->设置View的最大高度,单独使用无效,需要与setAdjustView
一起配合使用;例如如果想设置图片固定大小,又想保持图片宽高比,
设置如下:
* 设置setAdjustViewBounds为true;
* 设置maxWidth 、MaxHeight
* ImageView的宽度高度设为自定义;

测试图片参数:697*1024
测试实现:最大的高度不超过80dp;
xml源码:
		   <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#7FFF00"
        android:src="@drawable/c" 
        android:adjustViewBounds="true"
        android:maxHeight="80dp"
        android:maxWidth="100dp"
        />

       
    效果示意图:
   

属性4:android:src  -->设置View的图片资源位置;
属性5:android:tint -->将图片渲染成指定的颜色:

猜你喜欢

转载自sunzone.iteye.com/blog/1869915