Android界面布局包括框架布局、线性布局、表格布局、网格布局、相对布局和绝对布局等。

1.框架布局(FrameLayout)是最简单的界面布局,是用来存放一个元素的空白空间,且子元素的位置是不能够指定的,只能够放置在空白空间的左上角,如果有多个子元素,后放置的子元素将遮挡先放置的子元素,这种布局使用的较少。

2.线性布局(LinearLayout)是一种重要的界面布局中,也是经常使用到的一种界面布局

在线性布局中,所有的子元素都按照垂直或水平的顺序在界面上排列

    --如果垂直排列,则每行仅包含一个界面元素 (android:orientation="vertical")

    

android 主流框架的实现思路 android框架布局_表格布局




    --如果水平排列,则每列仅包含一个界面元素 (android:orientation="horizontal")

    

android 主流框架的实现思路 android框架布局_android 主流框架的实现思路_02


3.表格布局(TableLayout)是一种常用的界面布局,通过指定行和列将界面元素添加到表格中

TableLayout继承自LinearLayout,可以将表格布局看作是多行的线性布局。


网格的边界对用户是不可见的

表格布局支持嵌套

可以将表格布局放置在表格布局的表格中


可以在表格布局中添加其他界面布局,例如线性布局、相对布局等。

             

android 主流框架的实现思路 android框架布局_表格布局_03


5.网格布局(GridLayout)
Android SDK 4.0新支持的布局方式
将用户界面划分为网格,界面元素可随意摆放在网格中

网格布局比表格布局(TableLayout)在界面设计上更加灵活,在网格布局中界面元素可以占用多个网格的,而在表格布局却无法实现,只能将界面元素指定在一个表格行(TableRow)中,不能跨越多个表格行。 

为网格布局添加组件时,组件会按照水平位置从左到右依次排列。如果制定了列数的话则会自动换行。如果用户需要组件在特定位置显示,则需要使用android:layout_row和android:layout_column指定其在网格中的具体行列位置。

如果界面需要跨行或跨列,则使用网格布局非常方便。



5.相对布局(RelativeLayout)是一种非常灵活的布局方式,能够通过指定界面元素与其他元素的相对位置关系,确定界面中所有元素的布局位置
特点:能够最大程度保证在各种屏幕尺寸的手机上正确显示界面布局

    

android 主流框架的实现思路 android框架布局_界面布局_04


6.绝对布局(AbsoluteLayout)能通过指定界面元素的坐标位置,来确定用户界面的整体布局
绝对布局是一种不推荐使用的界面布局,因为通过X轴和Y轴确定界面元素位置后,Android系统不能够根据不同屏幕对界面元素的位置进行调整,降低了界面布局对不同类型和尺寸屏幕的适应能力。