第23講 UI 布局 之相對布局

2021-06-27 00:40:54 字數 3086 閱讀 5658

第23講 ui_布局 之相對布局

2

、relativelayout

(相對布局)

relativelayout(相對布局)是指元件的位置總是相對兄弟元件、父容器來決定的(相對位置),如某個元件的左邊右邊,上邊下邊。相對布局是除線性布局之外最常用的,它相對於線性布局來說更加靈活,每個元件都可以指定與其它元件或父元件的位置,只是必須通過id來進行指定。相對布局的子控制項必須有唯一的id屬性以使規則正確應用。

【注意】:

1.當心迴圈規則,迴圈規則發生在兩個控制項具有互相指向的規則時。如果你在布局設計中使用了迴圈規則,你將會得到以下錯誤資訊:

illegalstateexception: circulardependencies cannot exist in a relativelayout(相對布局中不允許存在迴圈依賴)

2.使用相對布局代替巢狀線性布局以改進程式效能和響應能力。

1-1

元件之間的位置關係

屬性名稱

作用

android:layout_above

將元件放在指定id元件的上方

android:layout_below

將元件放在指定id元件的下方

android:layout_below="@id/button1"

android:layout_toleftof

將元件放在指定id元件的左方

android:layout_torightof

將元件放在指定id元件的右方

1-2

元件對齊方式

屬性名稱

作用

android:layout_alignbaseline

將該元件放在指定id元件進行中心線對齊

android:layout_aligntop

將該元件放在指定id元件進行頂部對齊

android:layout_alignbottom

將該元件放在指定id元件進行底部對齊

android:layout_alignleft

將該元件放在指定id元件進行左邊緣對齊

android:layout_alignright

將該元件放在指定id元件進行右邊緣對齊,

android:layout_alignright="@id/button2" 

1-3

當前元件與父元件的對齊方式

屬性名稱

作用

android:layout_alignparenttop

該元件與父元件進行頂部對齊

android:layout_alignparentbottom

該元件與父元件進行底部對齊

android:layout_alignparentleft

該元件與父元件進行左邊緣對齊

android:layout_alignparentright

該元件與父元件進行右邊緣對齊,

android:layout_alignparentright="true" 

android:layout_alignwithparentifmissing

參照控制項不存在或不可見時參照父控制項

1-4

元件放置的位置

屬性名稱

屬性名稱

android:layout_centerhorizontal

將該元件放置在水平方向**的位置

android:layout_centerhorizontal="true" 

android:layout_centervertical

將該元件放置在垂直方向的**的位置

android:layout_centerinparent

將該元件放置在父元件的水平**及垂直**的位置

1-5

android:layout_marginleft

當前控制項左側的留白

android:layout_marginright

當前控制項右側的留白

android:layout_margintop

當前控制項上方的留白

android:layout_marginbottom

當前控制項下方的留白

相對布局之相對布局常用的兩組屬性

相對布局是通過指定當前控制項與兄弟控制項或者是父控制項之間的相對位置,從而達到控制控制項位置的目的 先看第一組屬性 android layout toleftof android layout torightof 將當前控制項的左邊緣對其id所指定控制項的右邊緣對齊 android layout b...

Xaml中UI布局之Grid

xaml中的grid控制項相當於html中的table標籤,用 的行列來控制布局。基本定義如下 grid x name grid1 grid.row 3 grid.column 3 height 300 margin 12,0,12,0 row,column屬性用來設定grid幾行幾列 grid.r...

Xaml中UI布局之StackPanel

xaml的布局中的panel布局不是一種布局,而且包含了幾種panel容器控制項,乙個個來說 1,stackpanel 堆布局 這個布局是比較簡單的布局模式,在這個stackpanel容器,控制項都是以一列,或者一行的方式來順序排列。stackpanel預設是垂直一列排列,通過設定orientati...