Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android UI之RealtiveLayout(相對布局)

Android UI之RealtiveLayout(相對布局)

編輯:關於Android編程

Android UI之RealtiveLayout(相對布局)

說明:RealtiveLayout是目前android開發中最最常用的布局管理器(比LinearLayout還常用),布局內的子組件的位置總是相互依照其他子組件和RealtiveLayout布局本身來確定的。這樣最大的好處就是更加自由靈活,可以設計出更加炫酷復雜的界面,而且可以在IDE中通過直接拖拽來進行界面的布局設計。
注意:RealtiveLayout的子組件不可以設置android:layout_gravity屬性。

RealtiveLayout中需要關注的屬性就比較多了,大概可以分為三類:

1 android:ignoreGravity

對應方法:setIgnoreGravity(int)
說明:設置不受gravity屬性影響的子組件。跟其他布局一樣,Realtivelayout也可以使用android:gravity屬性來設置其子組件的擺放位置,但RealtiveLayout需要實現更加復雜的布局,所以為所有組件設置統一的擺放方式難以滿足實際開發中的一些特殊需求,於是就有了這個屬相來進行特殊的忽略。
舉個栗子:


    
    

這裡寫圖片描述vcHLsry+1rXEtdeyv6OstvhpZ25vcmVHcmF2aXR51tDJ6NbDwcu1xHZpZXcxvs3SwMi7ysfO0tDQztLL2LXYtNPX88nPvce/qsq8sNq3xaGjPC9wPg0KPGgzIGlkPQ=="2-只能設置為truefalse的xml屬性">2 只能設置為true、false的xml屬性

說明:這一類屬性主要是為了彌補RealtiveLayout子組件不能設置layout_gravity屬性的遺憾,可以直接為子組件指定擺放位置。

以下是這類屬性的屬性表:

屬性名 功能說明 android:layout_centerHoriazontal 控制該子組件是否相對於父容器水平居中 android:layout_centerVertical 控制該子組件是否相對於父容器垂直居中 android:layout_centerInParent 控制該子組件是否相對於父容器居中 android:layout_alignParentBottom 控制該子組件是否與父容器底端對齊 android:layout_alignParentTop 控制該子組件是否與父容器頂端對齊 android:layout_alignParentLeft 控制該子組件是否與父容器左端對齊 android:layout_alignParentRight 控制該子組件是否與父容器右端對齊 android:layout_alignParentEnd 控制該子組件是否與父容器結束對齊(右上角) android:layout_alignParentStart 控制該子組件是否與父容器開始對齊(左上角)

需要注意的是,這些屬相是可以同時使用的,不過如果同時使用相互沖突的屬性(比如layout_alignParentLeft和layout_alignParentRight)會產生一些比較古怪的效果,所以不建議同時使用有沖突的屬性。


    

古怪的樣式
系統會努力去適應所有的屬性,導致組件被拉伸成很古怪的樣子。

3 只能設置為其他UI組件ID的xml屬性

說明:這些屬相就是RealtiveLayout的核心屬性,就是通過這些屬性,來確定各個子組件在布局方面的相互關系的。
以下是這類屬性的屬性表:

屬性名 功能說明 android:layout_toRightOf 控制該子組件位於ID指定組件的右側 android:layout_toLeftOf 控制該子組件位於ID指定組件的左側 android:layout_above 控制該子組件位於ID指定組件的上方 android:layout_below 控制該子組件位於ID指定組件的下方 android:layout_alignTop 控制該組件頂端與ID指定組件的上邊界對齊 android:layout_alignBottom 控制該底端組件與ID指定組件的下邊界對齊 android:layout_alignLeft 控制該組件左端與ID指定組件的左邊界對齊 android:layout_alignRight 控制該組件右端與ID指定組件的右邊界對齊 android:layout_alignStart 控制該組件起始位置與ID指定組件的起始位置對齊(左上角) android:layout_alignEnd 控制該組件結束位置與ID指定組件的結束位置對齊(右上角)

另外可以使用margin或padding對組件進行細微的調整,如下所示:

 

    
    
    

相對布局示例

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved