一、对比显示ScaleType的不同效果
二、使用嵌套LinearLayout为每一张ImageView添加文字说明
三、ScaleType的8个属性简要说明:
1.scaleType=“matrix”
是保持原图大小、从左上角的点开始,以矩阵形式绘图。
2.scaleType=“fitXY”
不按比例缩放图片,目标是把图片塞满整个View。
3.scaleType=“fitStart”
是将原图沿左上角的点(即matrix方式绘图开始的点),按比例缩放原图绘制而成的。
4.scaleType=“fitCenter”
是将原图沿上方居中的点(即matrix方式绘图第一行的居中的点),按比例缩放原图绘制而成的。
5.scaleType=“fitEnd”
是将原图沿下方居中的点(即matrix方式绘图最后一行的居中的点),按比例缩放原图绘制而成的。
6.scaleType=“Center”
是保持原图大小,以原图的几何中心点和ImagView的几何中心点为基准,只绘制ImagView大小的图像。
7.scaleType=“centerCrop”
不保持原图大小,以原图的几何中心点和ImagView的几何中心点为基准,只绘制ImagView大小的图像(以填满ImagView为目标,对原图进行裁剪)。
3.scaleType=“centerInside”
不保持原图大小,以原图的几何中心点和ImagView的几何中心点为基准,只绘制ImagView大小的图像(以显示完整图片为目标,对原图进行缩放)。
四、设置方法java:
使用setImageResource()设置使用的图片
使用setScaleType()设置图片拉伸属性
xml:
使用android:src="" 设置使用的图片
使用android:scaleType=""设置图片拉伸属性
先看原始图片:
效果图:
xml代码:
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:background="@drawable/field"
- android:orientation="vertical"
- tools:context=".MainActivity" >
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="horizontal" >
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:layout_marginRight="5dp" >
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="matrix"
- android:textColor="#ff00ff" />
- <ImageView
- android:id="@+id/imageViewId"
- android:layout_width="100dp"
- android:layout_height="100dp"
- android:background="#f0f0f0"
- android:scaleType="matrix"
- android:src="@drawable/zhl" />
- </LinearLayout>
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:layout_marginRight="5dp" >
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="fitXY"
- android:textColor="#ff00ff" />
- <ImageView
- android:id="@+id/imageViewId"
- android:layout_width="100dp"
- android:layout_height="100dp"
- android:background="#f0f0f0"
- android:scaleType="fitXY"
- android:src="@drawable/zhl" />
- </LinearLayout>
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:layout_marginRight="5dp" >
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="fitStart"
- android:textColor="#ff00ff" />
- <ImageView
- android:id="@+id/imageViewId"
- android:layout_width="100dp"
- android:layout_height="100dp"
- android:background="#f0f0f0"
- android:scaleType="fitStart"
- android:src="@drawable/zhl" />
- </LinearLayout>
- </LinearLayout>
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="horizontal" >
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:layout_marginRight="5dp" >
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="fitCenter"
- android:textColor="#ff00ff" />
- <ImageView
- android:id="@+id/imageViewId"
- android:layout_width="100dp"
- android:layout_height="100dp"
- android:background="#f0f0f0"
- android:scaleType="fitCenter"
- android:src="@drawable/zhl" />
- </LinearLayout>
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:layout_marginRight="5dp" >
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="fitEnd"
- android:textColor="#ff00ff" />
- <ImageView
- android:id="@+id/imageViewId"
- android:layout_width="100dp"
- android:layout_height="100dp"
- android:background="#f0f0f0"
- android:scaleType="fitEnd"
- android:src="@drawable/zhl" />
- </LinearLayout>
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:layout_marginRight="5dp" >
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="center"
- android:textColor="#ff00ff" />
- <ImageView
- android:id="@+id/imageViewId"
- android:layout_width="100dp"
- android:layout_height="100dp"
- android:background="#f0f0f0"
- android:scaleType="center"
- android:src="@drawable/zhl" />
- </LinearLayout>
- </LinearLayout>
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="horizontal" >
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:layout_marginRight="5dp" >
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="centerCrop"
- android:textColor="#ff00ff" />
- <ImageView
- android:id="@+id/imageViewId"
- android:layout_width="100dp"
- android:layout_height="100dp"
- android:background="#f0f0f0"
- android:scaleType="centerCrop"
- android:src="@drawable/zhl" />
- </LinearLayout>
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:layout_marginRight="5dp" >
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="centerInside"
- android:textColor="#ff00ff" />
- <ImageView
- android:id="@+id/imageViewId"
- android:layout_width="100dp"
- android:layout_height="100dp"
- android:background="#f0f0f0"
- android:scaleType="centerInside"
- android:src="@drawable/zhl" />
- </LinearLayout>
- </LinearLayout>
- </LinearLayout>