第九課-五大布局

爲了適應各式各樣的界面風格,Android系統提供了5種佈局,這5種佈局分別是:android

LinearLayout(線性佈局)框架

TableLayout(表格佈局)ide

RelativeLayout(相對佈局)佈局

AbsoluteLayout(絕對佈局)this

FrameLayout(幀佈局)spa

利用這五種佈局,能夠在屏幕上將控件爲所欲爲的擺放,並且控件的大小和位置會隨着屏幕大小的變化做出相應的調整。orm

一,LinearLayout(線性佈局)對象

    在一個方向上(垂直或水平)對齊全部子元素 一個垂直列表每行將只有一個子元素(不管它們有多寬) 一個水平列表只是一列的高度(最高子元素的高度來填充)it

二,TableLayout(表格佈局)class

把子元素放入到行與列中 不顯示行、列或是單元格邊界線 單元格不能橫跨行,如HTML中同樣 表格佈局模型以行列的形式管理子控件,每一行爲一個TableRow的對象,固然也能夠是一個View的對象。TableRow能夠添加子控件,每添加一個爲一列。

android:layout_colum官方解釋:The index of the column in which this child should be,也便是設置該控件在TableRow中所處的列。

android:layout_span官方解釋:Defines how many columns this child should span,也便是設置該控件所跨越的列數。

android:collapseColumns官方解釋:The 0 based index of the columns to collapse. The column indices must be separated by a comma: 1, 2, 5.也便是將TableLayout裏面指定的列隱藏,如有多列須要隱藏,請用逗號將須要隱藏的列序號隔開。

android:stretchColumns官方解釋:The 0 based index of the columns to stretch. The column indices must be separated by a comma: 1, 2, 5. You can stretch all columns by using the value 「*」 instead. Note that a column can be marked stretchable and shrinkable at the same time.也便是設置指定的列爲可伸展的列,可伸展的列會盡可能伸展以填滿全部可用的空間,如有多列須要設置爲可伸展,請用逗號將須要伸展的列序號隔開。

android:shrinkColumns官方解釋:The 0 based index of the columns to shrink. The column indices must be separated by a comma: 1, 2, 5. You can shrink all columns by using the value 「*」 instead. 設置指定的列爲可收縮的列。當可收縮的列太寬以致於讓其餘列顯示不全時,會縱向延伸空間。當須要設置多列爲可收縮時,將列序號用逗號隔開。

3、RelativeLayout(相對佈局)

相對佈局的子控件會根據它們所設置的參照控件和參數進行相對佈局。參照控件能夠是父控件,也能夠是其它子控件,可是被參照的控件必需要在參照它的控件以前定義。

4、AbsoluteLayout(絕對佈局)

絕對佈局的子控件須要指定相對於此座標佈局的橫縱座標值,不然將會像框架佈局那樣被排在左上角。手機應用須要適應不一樣的屏幕大小,而這種佈局模型不能自適應屏幕尺寸大小,因此應用的相對較少。下面以一個例子簡單說明絕對佈局:

5、FrameLayout(幀佈局) 

幀佈局是最簡單的佈局形式。全部添加到這個佈局中的視圖都以層疊的方式顯示。第一個添加的控件被放在最底層,最後一個添加到框架佈局中的視圖顯示在最頂層,上一層的控件會覆蓋下一層的控件。這種顯示方式有些相似於堆棧。

相關文章
相關標籤/搜索