android布局的一些知识

(一)
android:layout_alignParentBottom 控制该组件是否与布局容器底端对齐
android:layout_alignParentLeft 控制该组件是否与布局容器左边对齐
android:layout_alignParentRight 控制该组件是否与布局容器右边对齐
android:layout_alignParentTop 控制该组件是否与布局容器顶端对齐
--------------------------------------------------------------------
align对齐 parent父容器 alignParentBottom就是说你是否要和你的父布局的
底端进行对齐。

(二)
android:orientation
--------------------------------------------------------------------
这是线性布局LinerLayout的一个特有属性,用来设置线性布局的方向,可以
设置为horizontal或者vertical。
一定要注意设置属性android:orientation属性,否则有的
组件可能无法显示。该属性不设置时默认为horizontal。此时第一个控件的
宽度若设置成“fill_parent”,后面添加的组件将都无法看到。因此使用该布
局的时候要注意设置android:orientation="vertical"。

(三)
android:gravity与android:layout_gravity
--------------------------------------------------------------------
这是android线性布局的两个属性
android:gravity属性是对该view中内容的限定,比如一个button上面有text. 
你可以设置该text 相对于整个View的靠左,靠右等位置.
android:layout_gravity是用来设置该view相对与父view的位置.比如一个
button 在linearlayout里,你想把该button放在linearlayout里靠左、
靠右等位置就可以通过该属性设置.

(四)
android:layout_width android:layout_height
--------------------------------------------------------------------
这个属性有三个值,分别为fill_parent,wrap_content,match_parent。

(1)fill_parent
设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内
尽可能多的空间。这跟Windows控件的dockstyle属性大体一致。设置一个顶部
布局或控件为fill_parent将强制性让它布满整个屏幕。
这个参数不可以单纯的理解为占满整个屏幕,其实并不是这样,它只是尽可能多
的充满父布局的空白位置。

(2)wrap_content
设置一个视图的尺寸为wrap_content将强制性地使视图扩展以显示全部内容。
以TextView和ImageView控件为例,设置为wrap_content将完整显示其内部的
文本和图像。布局元素将根据内容更改大小。设置一个视图的尺寸为
wrap_content大体等同于设置Windows控件的Autosize属性为True。
其实也就是说把控件本身的大小显示出来,保证控件内容的完整性。

(3)match_parent
 Android2.2中match_parent和fill_parent是一个意思 .两个参数意思一样,
 match_parent更贴切,于是从2.2开始两个词都可以用。那么如果考虑低版
 本的使用情况你就需要用fill_parent了。

(五)
android:scaleType/ImageView.ScaleType
--------------------------------------------------------------------
ImageView的Scaletype决定了图片在View上显示时的样子,如进行何种比例的
缩放,及显示图片的整体还是部分,等等。

CENTER /center
按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的
居中部分显示

CENTER_CROP / centerCrop
按比例扩大图片的size进行显示,使得图片长(宽)等于或大于View的长(宽)
我的理解就是说把这张图片按原来的长宽比进行扩大以使这个图片的长或者宽
能够和这个View的大小一样。长或者宽都必须充满view,长或宽中最短的都得
和view的尺寸一样。

CENTER_INSIDE / centerInside
将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等
于或小于View的长/宽
这个属性和上一个属性是对应的一个进行放大,一个进行缩小。如果原图本身
就长宽都比view的小那么就会按原图进行显示。

FIT_CENTER / fitCenter 
把图片按比例扩大/缩小到View的宽度,居中显示
注意这句说的是扩大或缩小,也就是说如果你原图即使比view的长宽都小,也要进行
扩大一满足长或宽和view的长或宽相适应。

FIT_END / fitEnd   
把图片按比例扩大/缩小到View的宽度,显示在View的下部分位置,和fitCenter相同
只不过是放置的位置不同。

FIT_START / fitStart  
把图片按比例扩大/缩小到View的宽度,显示在View的上部分位置,和fitCenter相同
只不过是放置的位置不同。

FIT_XY / fitXY
不按比例缩放图片,目标是把图片塞满整个View

MATRIX / matrix 
用矩阵来绘制(从左上角起始的矩阵区域)
绘制时,使用图像矩阵方式缩放。图像矩阵可以通过 setImageMatrix(Matrix) 设置。
在 XML 中可以使用的语法: android:scaleType="matrix"。
matrix这个是比较重要的。设置了该属性之后ImageView控件就可以在代码中通过
Matrix进行缩小放大控制图片了

(六)
android:layout_above       在某元素的的上方
android:layout_toLeftOf    在某元素的左边
android:layout_toRightOf   在某元素的右边
android:layout_alignTop    本元素的上边缘和某元素的的上边缘对齐
android:layout_alignLeft   本元素的左边缘和某元素的的左边缘对齐
android:layout_alignBottom 本元素的下边缘和某元素的的下边缘对齐
android:layout_alignRight  本元素的右边缘和某元素的的右边缘对齐

你可能感兴趣的:(android,布局,控件)