android層布局
㈠ android的界面布局方式有哪些
一、界面布局之線性布局(LinearLayout)
這種布局比較常用,也比較簡單,就是每個元素佔一行,把它按照橫向排放,也就是每個元素佔一列。在布局中都按照垂直或者水平的順序依次排列子元素,每一個子元素都位於前一個元素之後。
二、界面布局之相對布局(RelativeLayout)
相對布局是android界面設計中比較常用和好用的一個布局方式。
三、界面布局之表格布局(TableLayout)
表格布局採用行、列的形式來管理元素組件。TableLayout的行和列不需要聲明,而是採用添加方法控制。
每次在TableLayout中添加一個TableRow,一個TableRow就代表表格中的一行,也同樣是容器,往裡面添加一個子組件就代表增加一列。在表格布局中,列的寬度由最寬的那個單元格決定,整個表格布局寬度取決於父容器的寬度
四、界面布局之絕對布局(AbsoluteLayout)
特點:以坐標的方式來定位在屏幕上的位置,引起缺乏靈活性,在沒有絕對定位的情況下相比其他類型的布局更難維護
五、界面布局之幀布局(FrameLayout)
FrameLayout是五大布局中最簡單的一個布局。在幀布局中,整個界面被當成一塊空白備用區域,所有的子元素都不能被指定放置的位置,它們統統放於這塊區域的左上角,並且後面的子元素直接覆蓋在前面的子元素之上,將前面的子元素部分和全部遮擋。
轉自長沙軟體公司---小房子
㈡ Android中的五種布局方式
分別是:FrameLayout(框架布局),LinearLayout (線性布局),AbsoluteLayout(絕對布局),RelativeLayout(相對布局),TableLayout(表格布局)。
一、FrameLayout:所有東西依次都放在左上角,會重疊,這個布局比較簡單,也只能放一點比較簡單的東西。二、LinearLayout:線性布局,每一個LinearLayout裡面又可分為垂直布局(android:orientation="vertical")和水平布局(android:orientation="horizontal" )。當垂直布局時,每一行就只有一個元素,多個元素依次垂直往下;水平布局時,只有一行,每一個元素依次向右排列。三、AbsoluteLayout:絕對布局用X,Y坐標來指定元素的位置,這種布局方式也比較簡單,但是在屏幕旋轉時,往往會出問題,而且多個元素的時候,計算比較麻煩。四、RelativeLayout:相對布局可以理解為某一個元素為參照物,來定位的布局方式。主要屬性有:相對於某一個元素android:layout_below、 android:layout_toLeftOf相對於父元素的地方android:layout_alignParentLeft、android:layout_alignParentRigh;五、TableLayout:表格布局,每一個TableLayout裡面有表格行TableRow,TableRow裡面可以具體定義每一個元素。每一個布局都有自己適合的方式,這五個布局元素可以相互嵌套應用,做出美觀的界面。
㈢ Android 常見布局
Android六大基本布局分別是:線性布局LinearLayout、表格布局TableLayout、相對布局RelativeLayout、層布局FrameLayout、絕對布局AbsoluteLayout、網格布局GridLayout。其中,表格布局是線性布局的子類。網格布局是android 4.0後新增的布局。
在手機程序設計中,絕對布局基本上不用,用得相對較多的是線性布局和相對布局。
padding是站在父view的角度描述問題,它規定它裡面的內容必須與這個父view邊界的距離。margin則是站在自己的角度描述問題,規定自己和其他(上下左右)的view之間的距離,如果同一級只有一個view,那麼它的效果基本上就和padding一樣了。
顯示特點:所有子控制項按照橫向或者豎向依次排列
left(左)、right(右)、top(上)、bottom(下)、center(中心)、
enter_vertical(豎向中心)、center_horizontal(橫向中心)
left(左)、right(右)、top(上)、bottom(下)、center(中心)、
enter_vertical(豎向中心)、center_horizontal(橫向中心)
子控制項的用法:android:layout_weight="1" 多個控制項同時使用,可以實現平分的效果
顯示特點:和LinearLayout布局相似,所有子控制項默認顯示在RelativeLayout的左上角
layout_toRightOf 在指定控制項的右邊
layout_toLeftOf 在指定控制項的左邊
layout_above 在指定控制項的上邊
layout_below 在指定控制項的下邊子控制項對齊關系
layout_alignRight 與指定控制項右對齊
layout_alignLeft 與指定控制項左對齊
layout_alignTop 與指定控制項上對齊
layout_centerInParent 與父容器中間對齊 pairunte
layout_centerVertical 與父容器豎向中心對齊
layout_centerHorizontal 與父容器橫向中心對齊
layout_alignParentLeft 與父容器左邊對齊
layout_alignParentTop 與父容器上邊對齊
layout_alignParentRight 與父容器右邊對齊
layout_alignParentBottom 與父容器下邊對齊
顯示特點:所有子控制項默認在GridLayout中橫向依次排列,當只等每行的列數時,到達指定列數
會自動換行顯示。
layout_column 在網格的第幾列
layout_row 在網格的第幾行
layout_columnSpan 跨列
layout_rowSpan 跨行
layout_gravity 在一個網格中的重心位置
columnCount 每行列總數
顯示特點:所有的子控制項默認顯示在FrameLayout的左上角,會重疊在一起顯示。
layout_gravity(設置給子控制項,調整控制項在容器內的重心)
常用值:
left(左)、 right(右)、
top(上)、 bottom(下)、
center(中心)、 center_vertical(豎向中心)
center_horizontal(橫向中心)
表格布局和網格布局類似,但是需要注意的是,表格布局不能跨行,只能跨列
㈣ Android緋葷粺涓鐨刄I甯冨矓鏈夊摢浜涙柟寮
Android緋葷粺涓甯哥敤鐨刄I甯冨矓鏂瑰紡鏈夊摢浜涳紵
鍦ˋndroid搴旂敤紼嬪簭寮鍙戜腑錛孶I甯冨矓鏄闈炲父鍏抽敭鐨勪竴閮ㄥ垎銆傝壇濂界殑UI甯冨矓鑳藉熸湁鏁堝湴鎻愬崌鐢ㄦ埛浣撻獙錛屽洜姝ゅ紑鍙戜漢鍛橀渶瑕佺啛鎮夊悇縐峌I甯冨矓鏂瑰紡銆備笅闈㈠皢浠嬬粛涓浜涘湪Android緋葷粺涓甯哥敤鐨刄I甯冨矓鏂瑰紡銆
1.LinearLayout
LinearLayout鏄疉ndroid緋葷粺涓鏈鍩烘湰鐨勫竷灞鏂瑰紡涔嬩竴錛屽畠鎸夌収鍨傜洿鎴栨按騫蟲柟鍚戜緷嬈℃帓鍒楄嗗浘銆傝ュ竷灞鏂瑰紡闈炲父綆鍗曪紝閫傜敤浜庡崟琛屾垨鍗曞垪鐨勫竷灞銆傚紑鍙戜漢鍛樺彲浠ラ氳繃璁劇疆鏉冮噸鏉ユ帶鍒惰嗗浘鐨勫ぇ灝忥紝騫舵牴鎹闇瑕佹坊鍔犲祵濂楀竷灞銆
2.RelativeLayout
RelativeLayout鏄鍩轟簬鐩稿逛綅緗鐨勫竷灞鏂瑰紡錛屽彲浠ラ氳繃鐩稿逛簬鍏朵粬瑙嗗浘鐨勪綅緗鏉ュ畾浣嶈嗗浘銆傝ュ竷灞鏂瑰紡閫傜敤浜庡叿鏈夊嶆潅鍜屽姩鎬佸竷灞鐨勫簲鐢ㄧ▼搴忋傚紑鍙戜漢鍛樺彲浠ラ氳繃璁劇疆瑙勫垯鏉ユ帶鍒惰嗗浘鐨勪綅緗鍜屽ぇ灝忥紝騫朵笖鍙浠ュ祵濂楀叾浠栧竷灞鏂瑰紡銆
3.FrameLayout
FrameLayout鏄鏈綆鍗曠殑甯冨矓鏂瑰紡涔嬩竴錛屽畠鍙鑳藉圭撼涓涓瀛愯嗗浘銆傝ュ竷灞鏂瑰紡閫氬父鐢ㄤ簬綆鍗曠殑瑙嗗浘鎴栧姩鐢誨簲鐢ㄧ▼搴忎腑錛屼緥濡傛笎鍙樿壊鎴栬呭悓姝ュ姩鐢繪晥鏋滐紝瀹冪殑浼樼偣鏄綆鍗曟槗鐢ㄣ
4.GridLayout
GridLayout鏄涓涓鍩轟簬琛ㄦ牸鐨勫竷灞鏂瑰紡錛屾敮鎸佽屽拰鍒椾箣闂寸殑騫沖潎鍒嗗竷銆傝ュ竷灞鏂瑰紡閫傜敤浜庡皢瑙嗗浘鎸夌収澶嶆潅鐨勬柟寮忔帓鍒楋紝渚嬪傜綉鏍煎紡鐨勫竷灞銆傚紑鍙戜漢鍛樺彲浠ョ伒媧誨湴鎺у埗琛屽垪涔嬮棿鐨勮竟璺濄佸ぇ灝忓拰鏉冮噸錛屼互鍙婂瓙瑙嗗浘鐨勮嚜閫傚簲瀹藉害鍜岄珮搴︺
5.ConstraintLayout
ConstraintLayout鏄疉ndroid緋葷粺涓鏈鐏墊椿鐨勫竷灞鏂瑰紡涔嬩竴錛屽畠鍩轟簬綰︽潫鍜屽歸綈鏂瑰紡榪涜屽竷灞錛屽厑璁稿紑鍙戜漢鍛樹互浠繪剰鎺掑垪鏂瑰紡緇勫悎瑙嗗浘銆傝ュ竷灞鏂瑰紡鏀鎸佽嗗浘涔嬮棿鐨勬按騫沖拰鍨傜洿瀵歸綈錛屽彲浠ヨ嚜鐢辮皟鏁村藉害銆侀珮搴︺佽竟璺濆拰闂磋窛銆傝櫧鐒惰ュ竷灞鏂瑰紡鐩稿瑰嶆潅錛屼絾鏄鍏佽稿紑鍙戜漢鍛樺壋閫犲嚭鍏鋒湁鐙鐗規晥鏋滃拰浜や簰鎬х殑搴旂敤紼嬪簭銆
鎬葷粨錛氫笂闈浠嬬粛鐨勪簲縐嶅竷灞鏂瑰紡鍙鏄疉ndroid緋葷粺涓甯哥敤鐨勪竴閮ㄥ垎錛屽紑鍙戜漢鍛樺彲浠ユ牴鎹闇瑕侀夋嫨鍚堥傜殑甯冨矓鏂瑰紡銆傚湪閫夋嫨甯冨矓鏂瑰紡鏃訛紝搴旇ヨ冭檻瑙嗗浘鐨勫嶆潅搴︺佸姩鎬佹у拰鍙緇存姢鎬с傞氳繃閫夋嫨閫傚綋鐨刄I甯冨矓鏂瑰紡錛屽紑鍙戜漢鍛樺彲浠ュ壋閫犲嚭鑹濂界殑鐢ㄦ埛浣撻獙騫舵彁楂樺簲鐢ㄧ▼搴忕殑絝炰簤鍔涖