基础篇_浅谈Android 布局

来源:互联网 发布:中国废除汉字知乎 编辑:程序博客网 时间:2024/06/07 03:18

     众所周知,Android 布局不但是应用中重要的组成部分,更为一个个应用提供了非常美观的界面,以此达到吸引用户的目的。所以界面的美观及细腻程度,很大程度上决定开发人员所做应用的推广程度。接下来,我将把我对Android布局的了解,呈现出来,有理解不到位的地方,还望大家多多包涵并指正。

      Android主要分为五种布局,分别是线性布局(LinearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)、表格布局(TableLayout)、绝对布局(AbsoluteLayout)。

     (一)线性布局(LinearLayout)  通过设置本布局的方向(orientation),确定竖直(vertical)或者水平(horizontal)方向,然后根据自己的设计需要利用布局一行或者一列包裹一个或者多个控件。

          android:id                为控件指定相应的ID 
        android:text               指定控件当中显示的文字,需要注意的是,这里尽量使用strings.xml文件当中的字符 
        android:grivity            指定控件在父布局中的基本位置,比如说居中,居右等位置         

        android:textSize           指定控件当中字体的大小 
        android:background         指定该控件所使用的背景色,RGB命名法         

        android:width              指定控件的宽度         

        android:height             指定控件的高度 
        android:padding*           指定控件的内边距,也就是说控件当中的内容 

     (二)相对布局(RelativeLayout) 不能通过设置布局的方向来确定控件的展示,本布局以两种方式确定控件的位置,

         a.往往以布局为中心,通过设置父布局属性将布局中的控件在指定的位置展示出来;

         b.以某一子控件为中心,通过与指定中心控件的位置属性作比较,来确定其他控件的位置;

         c.以上两种方式混合使用,大多数布局元素比较多的界面,常采用此种布局。

         android:layout_above                   将该控件的底部至于给定ID的控件之上        

         android:layout_below                   将该控件的顶部至于给定ID的控件之下 
         android:layout_toLeftOf                将该控件的右边缘和给定ID的控件的左边缘对齐         

         android:layout_toRightOf               将该控件的左边缘和给定ID的控件的右边缘对齐    
         android:layout_alignBaseline           该控件的baseline和给定ID的控件的baseline对齐         

         android:layout_alignBottom             将该控件的底部边缘与给定ID控件的底部边缘         

         android:layout_alignLeft               将该控件的左边缘与给定ID控件的左边缘对齐         

         android:layout_alignRight              将该控件的右边缘与给定ID控件的右边缘对齐         

         android:layout_alignTop                将给定控件的顶部边缘与给定ID控件的顶部对齐  
         android:alignParentBottom              如果该值为true,则将该控件的底部和父控件的底部对齐         

         android:layout_alignParentLeft         如果该值为true,则将该控件的左边与父控件的左边对齐         

         android:layout_alignParentRight        如果该值为true,则将该控件的右边与父控件的右边对齐         

         android:layout_alignParentTop           如果该值为true,则将空间的顶部与父控件的顶齐 
         android:layout_centerHorizontal         如果值为true,该控件将被至于水平方向的中央 
         android:layout_centerInParent           如果值为true,该控件将被至于父控件水平方向和垂直方向的中央         

         android:layout_centerVertical           如果值为true,该控件将被至于垂直方向的中央 

    (三)帧布局(FrameLayout)以界面的左上方顶点为起点,所有的控件按照层次全部堆叠在布局的左上方。

    (四)表格布局(TableLayout)表格和行和列组成,所以表格布局也就以行和列的形式管理子控件,每一行作为一个TableRow对象,TableRow对象同样可以添加子控件。

         属性:

          android:collapseColumns:将TableLayout里面指定的列隐藏,若有多列需要隐藏,请用逗号将需要隐藏的列序号隔开。             

             android:stretchColumns:设置指定的列为可伸展的列,以填满剩下的多余空白空间,若有多列需要设置为可伸展,请用逗号将需要伸展的列序号隔开。                

      android:shrinkColumns:设置指定的列为可收缩的列。当可收缩的列太宽不会被挤出屏幕。当需要设置多列为可收缩时,将列序号用逗号隔开。

      android:layout_colum:设置该控件在TableRow中指定的列

      android:layout_span:设置该控件的列数

    (五)绝对布局(AbsoluteLayout) 主要通过设置控件的x、y值来指定控件在布局中的位置,由于不是特别灵活,实际应用比较少

0 0
原创粉丝点击