在安卓系统中的布局方式有五种,最常用的是相对布局和线形布局,同时各个布局之间是可以嵌套使用的。下面分别来介绍他们的主要特征.
线形布局LinearLayout:
子控件以水平或者垂直方式排列. 里面有几个属性需要说明,gravity 是指子控件在布局中的位置,是全局属性,用在布局说明中。Layout_gravity: 是局部属性,是指子控件本身的布局位置。Layout_weight:是指控件在父类容器中占的比例。
相对布局RelativeLayout:
控件之间、控件与父类容器之间的相对位置,处理的灵活性比较大。
帧布局FrameLayout:
后面的控件会把前面的控件覆盖,控件从底层向顶层铺排。
绝对布局AbsoluteLayout:
子控件以绝对的XY坐标放在布局中,界面左上角的坐标为(0,0),这种方式现在不常用,因为手机的尺寸不同,绝对布局在不同的手机上运行时会破坏布局的美感。
表格布局TableLayout:
以行和列的方式管理控件。表格布局中的属性比较抽象,来说明一下(起始列的编号是0):
首先来看几个全局属性:
collapseColumns=“1”:隐藏第二列的空间
shrinkColumns = “2”:收缩第3列的内容,使之纵向向下扩展,而不至于超出界面的范围。
stretchColumns = “0,2”:拉伸第1、3列,使之横向填充整个屏幕
再来看一下几个局部属性:
layout_column:控件放置在第几列
layout_span:控件的尺寸占据几列