◎ 什么是相对布局 (RelativeLayout) ?
1. RelativeLayout 是另外一种控件摆放的方式。
2. RelativeLayout 是透过指定当前控件与兄弟控件或者是父控件之间的相对位置,从而达到控制控件位置的目的。
◎ 为什么要使用 RelativeLayout ?
以上篇所讲的猜拳游戏之版面为例,如果为了实现该版面的话,需使用多个 LinearLayout 互嵌,因此其复杂度也相对的提高许多,更遑论 UI 的性能了。
◎相对布局 (RelativeLayout) 的基本思路与优势
1. 在相对布局的情况下,如果都无设定该物件的位置的话,一般预设会将其放在「左上角」。因此,如果有二个物件皆无设定的话,就会有重叠的情况产生。
2. 当在设计相对布局时,第一件事就是需先确定第一个物件的位置及设置其 ID,之后的物件可以依此物件进行相对位置的编排。
3. 当第一个物件的位置改变了,而依附在第一个物件位置附近的第二个物件,不会因此而需做额外的调整。
◎ RelativeLayout 中两组常用属性之介绍
● 第一组相对布局属性
1. android:layout_below :该属性的值为「已经存在的 ID 」,即引用已经存在的 ID ,而其作用为「把当前的控件上边缘与指定 ID 控件的下边缘进行对齐之动作」。
2. android:layout_above :该属性的值为「已经存在的 ID 」,即引用已经存在的 ID ,而其作用为「把当前的控件下边缘与指定 ID 控件的上边缘进行对齐之动作」。
3. android:layout_toLeftOf :该属性的值为「已经存在的 ID 」,即引用已经存在的 ID ,而其作用为「把当前的控件右边缘与指定 ID 控件的左边缘进行对齐之动作」。不过,下图其因超出萤幕,所以无法显示了。
4. android:layout_toRightOf :该属性的值为「已经存在的 ID 」,即引用已经存在的ID ,而其作用为「把当前的控件左边缘与指定 ID 控件的右边缘进行对齐之动作」。
● 第二组相对布局属性
1. android:layout_alignLeft :该属性的值为「已经存在的 ID 」,即引用已经存在的 ID ,而其作用为「把当前的控件左边缘与指定 ID 控件的左边缘进行对齐之动作」。
2. android:layout_alignRight :该属性的值为「已经存在的 ID 」,即引用已经存在的ID ,而其作用为「把当前的控件右边缘与指定 ID 控件的右边缘进行对齐之动作」。
3. android:layout_alignTop :该属性的值为「已经存在的 ID 」,即引用已经存在的 ID ,而其作用为「把当前的控件上边缘与指定 ID 控件的上边缘进行对齐之动作」。不过,下图其因超出萤幕,所以无法显示了。
4. android:layout_alignBottom :该属性的值为「已经存在的 ID 」,即引用已经存在的 ID ,而其作用为「把当前的控件下边缘与指定 ID 控件的下边缘进行对齐之动作」。