LinearLayout (線性佈局)
提供了控件水平垂直排列的模型,同時可以通過設置子控件的weight 佈局參數控制各個控件在佈局中的相對大小。
水平(vertical )垂直(horizontal )
fill-parent: 佔滿整個屏幕,wrap-content :剛好適合控件內容的大小
對齊方式gravity 取值:
top :不改變大小,位置置於容器的頂部
bottom :不改變大小,位置置於容器的底部
left :不改變大小,位置置於容器的左邊
right :不改變大小,位置置於容器的右邊
center_vertical :不改變大小,位置置於容器的縱向中央部分
center_horizontal :不改變大小,位置置於容器的橫向中央部分
center :不改變大小,位置置於容器的橫向和縱向的中央部分
fill_vertical :可能的話,縱向延伸可以填滿容器
fiil_horizontal :可能的話,橫向延伸可以填滿容器
fiil :可能的話,縱向和橫向延伸填滿容器
AbsoluteLayout (坐標佈局)
可以讓子元素指定準確的x/y 坐標值,並顯示在屏幕上。(0, 0) 為左上角,當向下或向右移動時,坐標值將變大。
AbsoluteLayout 沒有頁邊框,允許元素之間互相重疊(儘管不推薦)。
我們通常不推薦使用AbsoluteLayout ,除非你有正當理由要使用它,因為它使界面代碼太過剛性,以至於在不同的設備上可能不能很好地工作。
Android :layout_x/layout_y=”56px” 確定控件位置
RelativeLayout (相對佈局)
允許子元素指定他們相對於其它元素或父元素的位置(通過ID 指定)。
因此,你可以以右對齊,或上下,或置於屏幕中央的形式來排列兩個元素。
元素按順序排列,因此如果第一個元素在屏幕的中央,那麼相對於這個元素的其它元素將以屏幕中央的相對位置來排列。
如果使用XML 來指定這個layout ,在你定義它之前,被關聯的元素必須定義。
Android :layout_centerInparent ,將當前控件放置於起父控件的橫向和縱向的中央部分
Android :layout_centerHorizontal, 使當前控件置於父控件橫向的中央部分
Android :layout_centerVertival, 使當前控件置於父控件縱向的中央部分
Android :layout_alignParentBottom, 使當前控件的底端和父控件底端對齊
Android :layout_alignParentLeft, 使當前控件的左端和父控件左端對齊
Android :layout_alignParentRight, 使當前控件的右端和父控件右端對齊
Android :layout_alignParentTop, 使當前控件的頂端和父控件頂端對齊
Android :layout_alignParentBottom, 使當前控件的底端和父控件底端對齊
上述屬性只能設置Bool 類型的值,“ true ”或“ false ”
Android :layout_below/layout_above/ layout_toLeftOf/ layout_toRightOf = “ @id/ ”使當前控件置於給出id 的空間的下方/ 上方/ 左邊/ 右邊
Android:layout_marginBottom/layout_marginLeft/layout_marginRight/layout_marginTop=”30px” 使當前控件底部/ 左邊/ 右邊/ 頂部空出相應像素空間
FrameLayout (單幀佈局)
是最簡單的一個佈局對象。
它被定制為你屏幕上的一個空白備用區域,之後你可以在其中填充一個單一對象— 比如,一張你要發布的圖片。
所有的子元素將會固定在屏幕的左上角;你不能為FrameLayout 中的一個子元素指定一個位置。
後一個子元素將會直接在前一個子元素之上進行覆蓋填充,把它們部份或全部擋住(除非後一個子元素是透明的)。
Android:src=”@drawable/” 屬性指定所需圖片的文件位置,用ImageView 顯示圖片時,也應當用android :src 指定要顯示的圖片
TableLayout (表格佈局)
以行列的形式管理子控件,每一行為一個TableRow 的對象,TableRow 也可以添加子控件
android :collapseColumns= “ n ”隱藏TableLayout 裡面的TableRow 的列n
android :stretchColumns= “ n ”設置列n 為可延伸的列
android :shrinkColumns= “ n ”設置列n 為可收縮的列
留言列表