RelativeLayout相关属性的实践
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="500dp">
<Button
android:id="@+id/btn_rl_center"
style="@style/btn_relative"
android:layout_centerInParent="true"
android:text="我在中间"/>
<Button
android:id="@+id/btn_rl_center_horizontal"
style="@style/btn_relative"
android:layout_centerHorizontal="true"
android:text="我在水平中间"/>
<Button
android:id="@+id/btn_rl_center_vertical"
style="@style/btn_relative"
android:layout_centerVertical="true"
android:text="我在垂直中间"/>
<Button
style="@style/btn_relative"
android:layout_marginTop="100dp"
android:layout_alignParentLeft="true"
android:text="我跟上级左边对齐"/>
<Button
style="@style/btn_relative"
android:layout_marginTop="60dp"
android:layout_alignParentTop="true"
android:text="我跟上级顶部对齐"/>
<Button
style="@style/btn_relative"
android:layout_marginTop="100dp"
android:layout_alignParentRight="true"
android:text="我跟上级右边对齐"/>
<Button
android:id="@+id/btn_rl_parent_bottom"
style="@style/btn_relative"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="我跟上级底部对齐"/>
<Button
style="@style/btn_relative"
android:layout_toLeftOf="@+id/btn_rl_parent_bottom"
android:layout_alignTop="@+id/btn_rl_parent_bottom"
android:text="我在底部左边" />
<Button
style="@style/btn_relative"
android:layout_toRightOf="@+id/btn_rl_parent_bottom"
android:layout_alignBottom="@+id/btn_rl_parent_bottom"
android:text="我在底部右边"/>
<Button
style="@style/btn_relative"
android:layout_above="@+id/btn_rl_center"
android:layout_alignLeft="@+id/btn_rl_center"
android:text="我在中间上面"/>
<Button
style="@style/btn_relative"
android:layout_below="@+id/btn_rl_center"
android:layout_alignRight="@+id/btn_rl_center"
android:text="我在中间下面"/>
效果如下:

layout_alignLeft和layout_alignRight的区别
<Button
style="@style/btn_relative"
android:layout_below="@+id/btn_rl_center"
android:layout_alignLeft="@+id/btn_rl_center"
android:text="我在中间下面"/>
<Button
style="@style/btn_relative"
android:layout_below="@+id/btn_rl_center"
android:layout_alignRight="@+id/btn_rl_center"
android:text="我在中间下面"/>
对比如下:
- layout_alignLeft 指:当前视图与指定视图的左侧对齐
- layout_alignRight 指:当前视图与指定视图的右侧对齐
![]()
layout_above
<Button
android:id="@+id/btn_rl_center"
style="@style/btn_relative"
android:layout_centerInParent="true"
android:text="我在中间"/>
<Button
style="@style/btn_relative"
android:layout_above="@+id/btn_rl_center"
android:text="我在中间上面"/>
layout_above 指:当前视图在指定视图的上方

layout_below
<Button
android:id="@+id/btn_rl_center"
style="@style/btn_relative"
android:layout_centerInParent="true"
android:text="我在中间"/>
<Button
style="@style/btn_relative"
android:layout_below="@+id/btn_rl_center"
android:text="我在中间下面"/>
layout_below 指:当前视图在指定视图的下方

layout_toLeftOf
<Button
android:id="@+id/btn_rl_center"
style="@style/btn_relative"
android:layout_centerInParent="true"
android:text="我在中间"/>
<Button
style="@style/btn_relative"
android:layout_toLeftOf="@+id/btn_rl_center"
android:text="我在中间左边"/>
layout_toLeftOf 指:当前视图在指定视图的左边

layout_toRightOf
<Button
android:id="@+id/btn_rl_center"
style="@style/btn_relative"
android:layout_centerInParent="true"
android:text="我在中间"/>
<Button
style="@style/btn_relative"
android:layout_toRightOf="@+id/btn_rl_center"
android:text="我在中间右边"/>
layout_toRightOf 指:当前视图在指定视图的右边

layout_alignTop
<Button
android:id="@+id/btn_rl_center"
style="@style/btn_relative"
android:layout_centerInParent="true"
android:text="我在中间"/>
<Button
style="@style/btn_relative"
android:layout_below="@+id/btn_rl_center"
android:text="我在中间下面"/>
<Button
style="@style/btn_relative"
android:layout_below="@+id/btn_rl_center"
android:layout_alignTop="@+id/btn_rl_center"
android:text="顶部对齐"/>
layout_alignTop 指:当前视图与指定视图的顶部对齐

layout_alignBottom
<Button
android:id="@+id/btn_rl_center"
style="@style/btn_relative"
android:layout_centerInParent="true"
android:text="我在中间"/>
<Button
style="@style/btn_relative"
android:layout_above="@+id/btn_rl_center"
android:text="我在中间上面"/>
<Button
style="@style/btn_relative"
android:layout_above="@+id/btn_rl_center"
android:layout_alignBottom="@+id/btn_rl_center"
android:text="底部对齐"/>
layout_alignBottom 指:当前视图与指定视图的底部对齐

