Android布局深究系列文章目录
Android布局深究(一)——LinearLayout(线性布局)
Android布局深究(二)——RelativeLayout(相对布局)
Android布局深究(三)——TableLayout(表格布局)
Android布局深究(四)——FrameLayout(帧布局)
Android布局深究(五)——GridLayout(网格布局)
Android布局深究(六)——AbsoluteLayout(绝对布局)
一、RelativeLayout(相对布局)的定义
相对布局是一种可以指定某个组件相当于另外一个同级组件或当前布局父容器的位置,解决了LinearLayout布局多层嵌套的问题,使布局结构始终保持扁平化。
二、相对布局常用属性细讲
1、基础属性
属性 | 作用 |
---|
gravity | 设置容器中所有组件元素的对齐方式 |
ignoreGravity | 设置容器中某个组件元素不受gravity的影响 |
2、根据父容器的位置定位
属性 | 作用 |
---|
layout_alignParentLeft | 向父容器的左边对齐 |
layout_alignParentRight | 向父容器的右边对齐 |
layout_alignParentTop | 向父容器的顶部对齐 |
layout_alignParentBottom | 向父容器的底部对齐 |
layout_centerInParent | 设置当前组件在父容器的中间位置 |
layout_centerHorizontal | 设置当前组件在父容器中水平居中 |
layout_alignParentLeft | 设置当前组件在父容器中垂直居中 |
效果图
3、根据兄弟组件定位
属性 | 作用 |
---|
layout_toLeftOf | 在指定组件的左边 |
layout_toRightOf | 在指定组件的右边 |
layout_above | 在指定组件的上方 |
layout_below | 在指定组件的下方 |
layout_alignTop | 向指定组件的上边界对齐 |
layout_alignBottoml | 向指定组件的下边界对齐 |
layout_alignLeft | 向指定组件的左边界对齐 |
layout_alignRight | 向指定组件的右边界对齐 |
效果图(根据兄弟组件对齐)
效果图(根据兄弟组件的边界对齐)
4、组件的内边距(padding)与外边距(margin)
属性 | 作用 |
---|
padding | 设置组件上下左右的内边距 |
paddingLeft | 设置组件左边的内边距 |
paddingRight | 设置组件右边的内边距 |
paddingTop | 设置组件上方的内边距 |
paddingBottom | 设置组件下方的内边距 |
layout_margin | 设置组件上下左右的外边距 |
layout_marginLeft | 设置组件左边的外边距 |
layout_marginRight | 设置组件右边的外边距 |
layout_marginTop | 设置组件上方的外边距 |
layout_marginBottom | 设置组件下方的外边距 |
三、总结
相对布局一般和线性布局配合使用,以应对各种复杂的布局需求。