一、相对布局核心定位原理与属性分类相对布局的核心逻辑十分简单所有控件的位置都不固定通过选取指定参照物来确定自身坐标位置。这种定位方式摆脱了线性布局的流式排布限制可自由实现控件错落、对齐、居中各类布局效果。为了方便开发使用相对布局的所有定位属性统一分为两大类两类属性的使用规则完全不同是开发中必须区分的重点参照父容器属性以RelativeLayout整体布局为参照物完整属性前缀为android:取值仅有true/false两种用于控制当前控件相对父布局的位置状态无需引用控件ID。参照其他控件属性以页面中其他已定义的子控件为参照物属性固定传入目标控件IDid/xxx不支持true/false取值精准定义当前控件与目标控件的相对位置关系。二、相对布局XML基础结构相对布局的所有定位效果均通过XML文件代码实现XML也是定义相对布局控件、配置属性的核心载体。日常实战中通常以TextView文本控件作为演示载体通过为TextView配置各类定位属性直观展示相对布局的位置控制效果。常用基础属性包含android:centerInParent、android:layout_align系列等通过组合配置这些属性即可快速完成控件的精准定位搭建基础页面布局。所有RelativeLayout属性必须携带android:命名空间前缀否则代码不生效。三、参照父容器的基础定位属性该类属性以父布局整体为参照取值为true时生效false则失效主要用于实现控件贴边、基础居中效果是最基础、最常用的属性集合。android:layout_alignParentLefttrue控件左侧与父容器左侧完全贴合对齐。android:layout_alignParentRighttrue控件右侧与父容器右侧完全贴合对齐。android:layout_alignParentToptrue控件顶部与父容器顶部完全贴合对齐。android:layout_alignParentBottomtrue控件底部与父容器底部完全贴合对齐。android:centerInParenttrue控件在父容器中实现水平垂直完全居中是全局居中最便捷的属性。四、参照父容器的组合居中属性为了满足精细化居中需求相对布局提供了拆分式的居中属性可单独控制水平、垂直方向居中支持单独使用或组合使用适配更多布局场景。android:centerHorizontaltrue仅控制控件在父容器内水平居中垂直位置可自定义。android:centerVerticaltrue仅控制控件在父容器内垂直居中水平位置可自定义。android:centerInParenttrue整合水平、垂直居中效果实现控件完全居中。实战中可灵活组合属性例如搭配android:centerHorizontaltrueandroid:layout_alignParentToptrue可实现控件顶部贴边、水平居中的效果大幅提升布局精准度与灵活性。五、参照其他控件的相对位置属性该类属性是相对布局灵活性的核心无需依赖父容器通过绑定页面中已有控件的ID实现控件之间的左右、上下排布适合多控件联动布局场景。android:layout_toLeftOfid/参考控件ID当前控件整体排布在指定ID参考控件的左侧当前控件右边缘在参考控件左边缘之外控件相互不重叠。android:layout_toRightOfid/参考控件ID当前控件整体排布在指定ID参考控件的右侧当前控件左边缘在参考控件右边缘之外控件相互不重叠。android:layout_aboveid/参考控件ID当前控件排布在指定ID参考控件的上方当前控件底部在参考控件顶部之上。android:layout_belowid/参考控件ID当前控件排布在指定ID参考控件的下方当前控件顶部在参考控件底部之下。六、控件边线对齐属性除了基础的上下左右排布相对布局还支持控件边线精准对齐可让当前控件与参考控件的对应边线完全重合解决多控件对齐错乱的问题让布局更规整统一。android:layout_alignTopid/参考控件ID当前控件的上边线与参考控件的上边线精准对齐。android:layout_alignBottomid/参考控件ID当前控件的下边线与参考控件的下边线精准对齐。android:layout_alignLeftid/参考控件ID当前控件的左边线与参考控件的左边线精准对齐。android:layout_alignRightid/参考控件ID当前控件的右边线与参考控件的右边线精准对齐。
郑州网站建设
网页设计
企业官网