分享

android 布局

 daydaydown 2012-11-12
 
                                           
 
 
布局管理器分为:线性布局、表格布局、帧布局、相对布局、绝对布局。
线性布局(LinearLayout):
          线性布局像awt中的flowLayout,他们会将容器一个挨着一个的排列起来。LinearLayout不仅可以控制各组件横向排列(android:orientation),
还可以控制组件纵向排列。LinearLayout跟flowLayout最大区别是:android的线性布局不会换行:当组件一个挨着一个排列到头支护
,剩下的组件将不会显示出来;在awt中flowLayout则会另起一行。
表格布局(TableLayout):
        表格布局采用行、列的形式来管理ui组件。TableLayout并不需要明确的来申明包含多少行、列,而是通过添加
TableRow、其他组件来控制表格的行数和列数。
      每次向tableLayout中添加一个TableRow,该TableRow就是一个表格行,TableRow也是容器,他也可以添加其他组件,每添加一个子组件
该表格就添加一列。如果直接向TableLayout中添加组件,这个组件将直接占一行。
在表格布局中,列的宽度又该列中最宽的容器觉定,整个表格的宽度决定了父容器的宽度(默认是占满父容器)。
表格布局是显性布局之类,所以表格布局拥有线性布局的所有属性。
帧布局(FrameLayout):
   FrameLayot为每个加入的组件创建了一个片白区域(称为一帧)。所有每个子组件占据一帧,这些帧都会根据gravity属性之心自动对齐。也就是说,帧布局有点类似于awt编程的cardLayout,都把组件一个一个的叠加在一起。与CardLayout 的区别在于,CardLayout可以将下面的Card移上来,但是frameLayout则没有提供对应的方法。 
相对布局(RelativeLayout):
       相对布局内子组件的位置总是相对于兄弟组件,父组件来决定。
       如果A组件的位置是由B组件的位置来决定的,就要先定义B组件,在定义A组件。
绝对布局(AbsoluteLayout):
  绝对布局就想awt中的空布局。就是android不提供任何布局控制,而是由开发人员自己通过X坐标,Y坐标来控制组件的位置。使用这种布局的时候,布局容器不在管理子组件的位置、大小----这些都要开发人员自己定义。
ps:大部分时候,使用绝对布局都不是一个好思路,因为运行android应用手机往往千差万别,所以使用绝对布局会很难兼顾不同屏幕大小,分辨率问题。
 
 
 
 
 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多