五大布局

来源:互联网 发布:mac登陆界面变英文 编辑:程序博客网 时间:2024/05/16 05:15

RelativeLayout(相对布局)

         通过定义控件和控件之间的关系来确定位置,默认情况下都是与屏幕左上角对齐;

相对于同级控件而言:     

          layout_toLeftOf="@id/tv"----某控件的左边
          layout_toRightOf="@id/tv"---某控件的右边
          layout_above="@id/tv"---某控件的上方
          layout_below="@id/tv"---某控件的下方
          layout_marginLeft="10.px"---距左边的距离
          layout_marginTop="10.px"---距上边的距离
          layout_alignTop="@id/tv"--与某控件的顶端对齐

相对于父窗体而言:

          layout_centerInParent="true"---窗体中央
          layout_centerHorizontal="true"---水平方向居中(默认情况下在界面最上方,水平居中)
          layout_centerVertical="true"--竖直方向居中(默认情况下在界面最左边,居中)
          layout_alignParentBottom="true"--与父窗体底部对齐(默认是左下角)
          layout_alignParentRight="true"--与父窗体右边对齐(默认是右上角)

 

LinearLayout(线性布局)

          控件自上而下或者自左向右排列采用线性布局(竖直方向和水平方向)--通过orientation指定布局方向,不存在控件对齐的参数。(线性布局中直接指定属性gravity为center,则控件在屏幕得中央)

          线性布局和相对布局经常混合使用,几个控件组合成一个相对布局,这几个相对布局组成一个线性布局,自上而下排列,而其中的分割线就是<View/>,宽度填充父窗体,高度手动给定,再指定background属性来添加颜色。

          LinearLayout还有个非常重要的属性:android:layout_weight="1",这个weight在垂直布局中时代表行距,水平布局时代表列宽,weight值越大就越大。

 

TableLayout(表格布局)

         多用于安卓办公,<TableRow/>定义表格行,其中可以具体定义每一个元素,对齐方式android_gravity=""。

         若某列被设置为Shrinkable,那么该列所有的单元格的宽度可以被收缩;

         若某列被设置为Stretchable,那么该列所有的单元格的宽度可以被拉伸;

         若某列被设置为Collapsed,那么该列所有的单元格的宽度可以被收缩;

 

AbsoluteLayout(绝对布局)

         绝对布局犹如div指定了absolute属性,用X、Y来指定元素的位置

         layout_X--距离左边的距离
         layout_Y--距离上边的距离

         垂直切换时,往往会出现问题,元素较多时计算会比较麻烦

 

FrameLayout(帧布局)

         我们可以认为这种布局覆盖式的添加控件,后指定的控件会出现在先指定的控件的上面,而且还会覆盖住,层次感强的布局就需要安排控件的先后顺序

 

 

 

 

 

 

 

0 0
原创粉丝点击