目錄
- 寫在前面的話
- 一、相對布局
- (一)概述
- (二)注意事項
- (三)常用屬性
- (四)測驗
- 二、補充內容
寫在前面的話
1、內容參考自B站安卓相關學習視頻以及網路,
2、內容如果有不對的,希望可以指出或補充,
3、鞏固內容,
一、相對布局
(一)概述
相對布局(RelativeLayout):也是常用布局之一,最為靈活,可以設定某一個控制元件相對于包裹它的(父容器)或者是和它一起被包裹的另一個控制元件(兄弟控制元件)的位置,
適用于較復雜的布局,主要針對的是線性布局嵌入多層的問題,一般采用 RelativeLayout + LinearLayout的layout_weight屬性 來搭配使用,
(二)注意事項
1、相對于兄弟控制元件的位置,必須通過ID來進行指定,
2、指定位置關系時,參考的ID必須在參考之前被定義好(先定義,后參考),就是參考了一個id,那這個id一定是要存在的,
3、相對于父容器的定位,xx居中對齊方式取false時,就相當于是恢復成默認位置(左上),
4、再次強調,默認位置是左上,
(三)常用屬性
相對布局(RelativeLayout)的部分屬性,整理如下,
| 相對于 | 屬性 | 作用 | 值 |
|---|---|---|---|
| 父容器 |
|
|
|
|
|
| ||
|
|
| ||
| 兄弟控制元件 |
|
|
|
|
|
| ||
|
|
|
注:
1.屬性名稱帶有parent的表示是父容器(可以以此來判斷),
2.相對于父容器的值為flase時表示作用相反(不包括居中方式),如android:layout_alignParentBottom="false"就是靠上的效果,
(四)測驗
1、相對于父容器
① android:layout_alignParentBottom=“true”,效果如下,

② android:layout_centerInParent=“true”,效果如下,

③ android:layout_centerHorizontal=“true”,效果如下,

④ 組合測驗
這里我試的是 android:layout_centerHorizontal=“true” + android:layout_alignParentBottom=“true”,效果如下,

2、相對于兄弟控制元件
為了方便看出效果,將控制元件1(Test1)設定到界面居中位置,
① android:layout_toLeftOf ="@+id/參考的已有id名稱",效果如下,

② android:layout_above="@+id/參考的已有id名稱",效果如下,

③ android:layout_alignBottom="@+id/參考的已有id名稱",效果如下,

二、補充內容
1、layout_weight屬性是線性布局(LinearLayout)特有的屬性,
2、關于Android的單位:
sp(scaled pixels,可縮放像素)一般是作為文字大小的單位,dp(density-independent pixels,密度無關像素)則是作為其它元素的單位 ,
dp與sp
3、關于控制元件的id名稱
一般都是用的 @+id/xx來定義id和參考已有id
- @+id/自定義id名稱:創建新的id
- @id/已有的id名稱 或者 @+id/已有的id名稱:參考id
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/247201.html
標籤:其他
