android中易混淆的知识点(整理自用)
2015-03-13 18:06
155 查看
padding和layout_margin的区别
px、dp、dip和sp这些单位的区别
gravity与layout_gravity的区别
关于ImageView中android:scaleType属性各个值得比较
Margin attributes are layout parameters. They determine the distance
between widgets. Given that a widget can only know about itself,
margins must be the responsibility of the widget’s parent.
(英文摘自Android Programming The Big Nerd Ranch Guide)
1. android:scaleType=”matrix”:保持原状大小,从左上角的点开始,以矩阵形式绘图
下图是原图(没有添加该属性)与添加该属性值为matrix的图片比较
2. android:scaleType=”fitXY”:将原图在XY方向拉伸后绘制的(填满ImageView)
下图是原图(没有添加该属性)与添加该属性值为fitXY的图片比较
3. android:scaleType=”fitStart” :将原图沿左上角的点(即matrix方式绘图开始的点),按比例缩放原图绘制而成的。
下图是原图(没有添加该属性)与添加该属性值为fitStart的图片比较
4. android:scaleType=”fitCenter”:将原图沿上方居中的点(即matrix方式绘图第一行剧中的点),按比例缩放绘制而成的
下图是原图(没有添加该属性)与添加该属性值为fitCenter的图片比较
4. android:scaleType=”fitEnd”:可按fitStart(或者fitCenter)来理解,只不过位置居于不同位置
下图是原图(没有添加该属性)与添加该属性值为fitEnd的图片比较
5. android:scaleType=”center”:保持原图大小,以原图的几何中心店和ImageView的几何中心点为基准,只绘制ImageView大小的图像
下图是原图(没有添加该属性)与添加该属性值为center的图片比较
6. android:scaleType=”centerCrop”:不保持原图大小,以原图的几何中心点和ImageView的几何中心点为基准,只绘制ImageView大小的图像(按比例缩放,并根据ImageView的大小,并对原图进行裁剪)
下图是原图(没有添加该属性)与添加该属性值为centerCrop的图片比较
7. android:scaleType=”centerInside”:不保持原图大小,以原图的几何中心点和ImageView的几何中心点为基准,只绘制ImageView大小的图像(以显示完整图片为目标,对原图进行缩放)
下图是原图(没有添加该属性)与添加该属性值为centerInside的图片比较
注意:fitCenter和centerInside的效果在这边的显示是一样的,理由就是fitcenter是会按照图片的比例缩放,而centerInside为了能够完整的显示图片,也是按照图片的比例来进行缩放;但是他们的绘制方式是不同的,这里请注意下。
px、dp、dip和sp这些单位的区别
gravity与layout_gravity的区别
关于ImageView中android:scaleType属性各个值得比较
一、padding和layout_margin的区别
- 以当前添加该属性的控件进行说明: - padding是相对于这个控件内部(内边框,控件内部的内容和控件的距离); - margin则是相对于这个控件的外部(外边框,和父控件的距离)
Margin attributes are layout parameters. They determine the distance
between widgets. Given that a widget can only know about itself,
margins must be the responsibility of the widget’s parent.
(英文摘自Android Programming The Big Nerd Ranch Guide)
二、px、dp、dip和sp这些单位的区别
- px:像素,代表屏幕上一个屋里像素点 - dp:Dots per Inch,每英寸所包含的像素点,即像素密度,例如某设备的分辨率为240*320,其物理尺寸为1.5英寸*2英寸,则其横屏和纵屏的像素密度分别为160dpi和160dpi - dip:同dp - sp:Scale-independent Pixel,与缩放无关的抽象像素,一般用在文字大小的设定上
三、gravity与layout_gravity的区别
- gravity指的是在控件内,控件中的元素与控件的位置关系; - layout_gravity指的是子控件与父控件间的位置关系
四、关于ImageView中android:scaleType属性各个值得比较
原图:543*6931. android:scaleType=”matrix”:保持原状大小,从左上角的点开始,以矩阵形式绘图
下图是原图(没有添加该属性)与添加该属性值为matrix的图片比较
2. android:scaleType=”fitXY”:将原图在XY方向拉伸后绘制的(填满ImageView)
下图是原图(没有添加该属性)与添加该属性值为fitXY的图片比较
3. android:scaleType=”fitStart” :将原图沿左上角的点(即matrix方式绘图开始的点),按比例缩放原图绘制而成的。
下图是原图(没有添加该属性)与添加该属性值为fitStart的图片比较
4. android:scaleType=”fitCenter”:将原图沿上方居中的点(即matrix方式绘图第一行剧中的点),按比例缩放绘制而成的
下图是原图(没有添加该属性)与添加该属性值为fitCenter的图片比较
4. android:scaleType=”fitEnd”:可按fitStart(或者fitCenter)来理解,只不过位置居于不同位置
下图是原图(没有添加该属性)与添加该属性值为fitEnd的图片比较
5. android:scaleType=”center”:保持原图大小,以原图的几何中心店和ImageView的几何中心点为基准,只绘制ImageView大小的图像
下图是原图(没有添加该属性)与添加该属性值为center的图片比较
6. android:scaleType=”centerCrop”:不保持原图大小,以原图的几何中心点和ImageView的几何中心点为基准,只绘制ImageView大小的图像(按比例缩放,并根据ImageView的大小,并对原图进行裁剪)
下图是原图(没有添加该属性)与添加该属性值为centerCrop的图片比较
7. android:scaleType=”centerInside”:不保持原图大小,以原图的几何中心点和ImageView的几何中心点为基准,只绘制ImageView大小的图像(以显示完整图片为目标,对原图进行缩放)
下图是原图(没有添加该属性)与添加该属性值为centerInside的图片比较
注意:fitCenter和centerInside的效果在这边的显示是一样的,理由就是fitcenter是会按照图片的比例缩放,而centerInside为了能够完整的显示图片,也是按照图片的比例来进行缩放;但是他们的绘制方式是不同的,这里请注意下。
相关文章推荐
- 记:Android 知识点整理 20140329
- android开发常用小知识点整理
- Android注解(Annotation)知识点总结整理
- android知识点整理
- 一些 Android 重要知识点解析整理
- 整理的一些android小知识点
- Android 零散知识点整理
- Android 零碎知识点整理
- Android小知识点整理
- Android动画知识点整理
- Android知识点整理(二)
- <Android知识点整理>1.Android的四大组件
- <Android知识点整理>0.序
- C++易混淆知识点整理
- Android知识点记录:七牛Android SDK调试整理
- Android 常用知识点整理
- [知识点整理]Android事件传递机制
- android细小知识点整理
- Android基础知识点的整理2
- 【持续更新】android易错知识点、相见恨晚的知识点整理