Android學習之路2 五大布局

2021-07-03 05:55:16 字數 1797 閱讀 4716

android介面由多個view和viewgroup構成的

android五大布局linearlayout(線性布局),relativelayout(相對布局),framelayout(單幀布局),tablelayout(**布局),absolutelayout(絕對位置布局)

linearlayout(線性布局):linearlayout按照垂直或者水平的順序依次排列子元素,通過它的orientation屬性來設定;horizontal水平;vertical垂直

relativelayout(相對布局),relativelayout按照各子元素之間的位置關係或者與父元素之間的關係完成布局

relativelayout裡常用的位置屬性如下:

android:layout_toleftof —— 該元件位於引用元件的左方

android:layout_torightof —— 該元件位於引用元件的右方

android:layout_above —— 該元件位於引用元件的上方

android:layout_below —— 該元件位於引用元件的下方    //這組屬性後面的引數為引用其他的元件

android:layout_alignparentleft —— 該元件是否對齊父元件的左端

android:layout_alignparentright —— 該元件是否齊其父元件的右端

android:layout_alignparenttop —— 該元件是否對齊父元件的頂部

android:layout_alignparentbottom —— 該元件是否對齊父元件的底部

android:layout_centerinparent —— 該元件是否相對于父元件居中

android:layout_centerhorizontal —— 該元件是否橫向居中

android:layout_centervertical —— 該元件是否垂直居中  / / 這兩組元件的引數為boolean   true為是 false為不是

framelayout

framelayout是五大布局中最簡單的乙個布局,在這個布局中,整個介面被當成一塊空白備用區域,所有的子元素都不能被指定放置的位置,它們統統放於這塊區域的左上角,並且後面的子元素直接覆蓋在前面的子元素之上,將前面的子元素部分和全部遮擋。

tablelayout

**布局,表的行數由tablerow決定,即建立了多少個tablerow就有多少行,表的列就是在tablerow裡面放了幾個元件,就有多少列

全域性屬性也即列屬性,有以下3個引數:

android:stretchcolumns    設定可伸展的列。該列可以向行方向伸展,最多可佔據一整行。

android:shrinkcolumns     設定可收縮的列。當該列子控制項的內容太多,已經擠滿所在行,那麼該子控制項的內容將往列方向顯示。

android:collapsecolumns 設定要隱藏的列。

單元格屬性,有以下2個引數:

android:layout_column    指定該單元格在第幾列顯示

android:layout_span        指定該單元格佔據的列數(未指定時,為1)

absolutelayout

absolutelayout 絕對布局,即指定x,y的座標實際開發中,通常不採用此布局格式,因為它的介面**過於剛性,以至於有可能不能很好的適配各種終端

在這裡額外提一下還有一種gridlayout網格布局

android 五大布局

android的介面是有布局和元件協同完成的,布局好比是建築裡的框架,而元件則相當於建築裡的磚瓦。元件按照布局的要求依次排列,就組成了使用者所看見的介面。android的五大布局分別是linearlayout 線性布局 framelayout 單幀布局 relativelayout 相對布局 abs...

Android五大布局

線性布局linerlayout 按照垂直或者水平的順序依次排列子元素,每乙個子元素都位於前乙個元素之後。如果是垂直排列,那麼將是一 個n行單列的結構,每一行只會有乙個元素,而不論這個元素的寬度為多少 如果是水平排列,那麼將是乙個單行n列的結構。如果搭建兩 行兩列的結構,通常的方式是先垂直排列兩個元素...

Android五大布局

1.相對布局 relativelayout 允許子元素指定它們相對於其父元素或兄弟元素的位置,這是實際布局中最常用的布局方式之一。特點 相對於其他空間的位置,和相對父元素的位置進行布局 第一類 屬性值為true或false android layout centerhrizontal 水平居中 an...