安卓系統之五大布局

安卓系統之五大布局
一、線性佈局

//特點:線性佈局必須要指定子控件的排列方向,要麼是水平(horizontal)排列,要麼是豎直(vertical)排列;
android:orientation=”vertical” //線性佈局的排列方向:水平-horizontal、垂直-vertical

android:gravity="top"    //屬性值有(buttom、  left、right、center_vertical、fill_vertical、center_horizontal、fill_horizontal、center、fill、clip_vertical、clip_horizontal)控制佈局中控件 的佈局方式。如果沒有子控件的控件設置此屬性,表示其內容的對其方式,比如說TextView裏面文字的對其方式;若是有子控件的控件設置此屬性,則表示其子控件的對其方式,gravity如果需要設置多個屬性,用||隔開;

android:gravity與android:layout_gravity的區別
android:gravity    是指本元素的子元素相對與它的對其方式。如:<TextView />控件內的文字對齊;    
android:layout_gravity    是指本元素相對於它的父元素的對其方式。如:<TextView />本身和LinearLayout的對其方式;
android:layout_weight="1"    通過設置控件的android:layout_weight=""屬性 ,用來控制各個控件在在佈局中的相對大小。線性佈局會根據該控件                 android:layout_weight=""的值與其所處佈局中所有控件android:layout_weight=""值之和的比值爲該控件分配佔用區域  。

比如:現在有三個文本框,第一個文本框weight=1,第二個文本框weight=2,第三個文本框weight=0;那麼顯示出來的效果是第三個文本框以實際尺寸顯示,第二個文本框顯示剩餘空間的2/3大小,第二個文本框顯示剩餘空間的1/3大小。

總而言之,weight是用來按比例分配空間大小的屬性;如何不設置則優先按照實際大小顯示,然後在按照比例顯示剩餘空間;

如果LinearLayout包含子LinearLayout,子LinearLayout之間的權值越大的,重要度則越小。如果有LinearLayout A包含LinearLayout C,D,C的權值爲2,D的權值爲1,則屏幕的2/3空間分給權值爲1的D,1/3分給權值爲2的C。在LinearLayout嵌套的情況下,子LinearLayout必須要設置權值,否則默認的情況是未設置權值的子LinearLayout佔據整個屏幕

Pasted from: http://jingyan.baidu.com/article/ce436649fbf1563773afd3be.html

二、相對佈局

三、表格佈局

四、幀佈局/框架佈局

五、絕對佈局

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章