一、Android中的两种布局方式
1.在xml配置文件中声明:在程序中通过setContextView(R.layout.main)方法将视图呈现在Activity中,通过findViewById方法获得组件实例
2.在程序中通过“硬代码”直接实例化布局及其组件。
二、Android中常见的布局方式:
1.LinearLayout——线性布局,按垂直或水平布局。
常用属性
①android:orientation——取值为"vertical" (垂直)、"horizontal" (水平)。
( 当垂直布局时,每一行就只有一个元素,多个元素依次垂直往下;水平布局时,只有一行,每一个元素依次向右排列。)
②android:gravity——取值为“top”、“bottom”、“left”、“right”
③android:layout_weight="1"。这个weight在垂直布局时,代表行距;水平的时候代表列宽;weight值越大就越大。
2.FrameLayout——帧布局,组件从屏幕的左上角坐标布局
从屏幕左上角(0,0)坐标开始布局,多个组件层叠排序,后面的(非透明)覆盖前面的。
3.TableLayout——表格布局,按行列方式布局
每一个TableLayout里面有表格行TableRow,TableRow里面可以具体定义每一个元素。每个TableRow 都会定义一个 row (事实上,你可以定义其它的子对象,这在下面会解释到)。TableLayout 容器不会显示row 、cloumns 或cell 的边框线。每个 row 拥有0个或多个的cell ;每个cell 拥有一个View 对象。表格由列和行组成许多的单元格。表格允许单元格为空。单元格不能跨列。
4.RelativeLayout——相对布局,相对其他组件的布局方式
主要属性:
①android:layout_方向 = id 在这个id对应的控件的方向上或者下
②android:layout_align方向 = id 和这个id对应的控件的(上下左右)对齐
③ android: layout_to方向Of = id 在这个id对应的控件的左或者右
④android:layout_alignParent方向="true"/“false” 使当前控件的左端或者右端和父控件的左端或者右端对齐或不对齐。
⑤android:layout_margin方向="10dip" 使当前控件左边或右边空出相应的空间。
5.AbsoluteLayout——绝对布局,按绝对坐标布局
以屏幕左上角为(0,0)的坐标轴的x,y值,当向下或向右移动时,坐标值将变大。
主要属性:
①layout_x
② layout_y