在Android程序创建时,默认采用的就是相对布局(RelativeLayout)。相对布局是通过相对定位的方式指定控件位置,即以其他控件或父容器为参照物,摆放控件位置。在设计相对布局时要遵循控件之间的依赖关系,后放入控件的位置依赖于先放入的控件。
相对布局属性较多,但都是有规律的,所以不难理解,下面在布局内控件的摆放位置的属性,如下:
控件属性 | 功能描述 |
android:layout_centerlnParent | 设置当前控件位于父布局的中央位置 |
android:layout_centerVertical | 设置当前控件位于父布局的垂直居中位置 |
android:layout_centerHorizontal | 设置当前控件位于父布局的水平居中位置 |
android:layout_above | 设置当前控件位于某控件上方 |
android:layout_below | 设置当前控件位于某控件下方 |
android:layout_toLeftOf | 设置当前控件位于某控件左侧 |
android:layout_toRightOf | 设置当前控件位于某控件右侧 |
android:layout_alignParentTop | 设置当前控件是否与父控件顶端对齐 |
android:layout_alignParentLeft | 设置当前控件是否与父控件左对齐 |
android:layout_alignParentRight | 设置当前控件是否与父控件右对齐 |
android:layout_alignParentBottom | 设置当前控件是否与父控件底端对齐 |
android:layout_alignTop | 设置当前控件的上边界与某控件的上边界对齐 |
android:layout_alignBottom | 设置当前控件的下边界与某控件的下边界对齐 |
android:layout_alignLeft | 设置当前控件的左边界与某控件的左边界对齐 |
android:layout_alignRight | 设置当前控件的右边界与某控件的右边界对齐 |
再来看一下相对于某控件间距的属性,如下:
控件属性 | 功能描述 |
android:layout_marginTop | 设置当前控件上边界于某控件的距离 |
android:layout_marginBottom | 设置当前控件底边界于某控件的距离 |
android:layout_marginLeft | 设置当前控件左边界于某控件的距离 |
android:layout_marginRight | 设置当前控件右边界于某控件的距离 |
最后介绍在布局中设置内边距的属性,如下:
布局属性 | 功能描述 |
android:paddingTop | 设置布局顶部内边距的距离 |
android:paddingBottom | 设置布局底部内边距的距离 |
android:paddingLeft | 设置布局左内边距的距离 |
android:paddingRight | 设置布局右内边距与某控件的距离 |
android:padding | 设置布局四周内边距的距离 |
上面我们已经简单的介绍了相对布局的内的简单属性,下面让我们用实践简单实现以下示意图
如果还不会创建XML界面的同学可以参考我上一篇文章Android入门--UI开发--5种常见布局简介(LinearLayout篇)_将军府中来的博客-CSDN博客
- 实现方式:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent">android:layout_centerHorizontal="true"//设置当前控件位于父类的水平居中位置android:layout_centerVertical="true"//设置当前控件位于父类的垂直居中位置<Buttonandroid:id="@+id/btn_center"android:layout_width="100dp"android:layout_height="100dp"android:layout_centerHorizontal="true"android:layout_centerVertical="true"android:layout_margin="10dp"android:text="中" /><Buttonandroid:id="@+id/btn_top"android:layout_width="100dp"android:layout_height="100dp"android:layout_above="@+id/btn_center"android:layout_margin="10dp"android:layout_toRightOf="@+id/btn_left"android:text="上" /><Buttonandroid:id="@+id/btn_left"android:layout_width="100dp"android:layout_height="100dp"android:layout_below="@+id/btn_top"android:layout_margin="10dp"android:layout_toLeftOf="@+id/btn_center"android:text="左" /><Buttonandroid:id="@+id/btn_right"android:layout_width="100dp"android:layout_height="100dp"android:layout_below="@+id/btn_top"android:layout_margin="10dp"android:layout_toRightOf="@+id/btn_center"android:text="右" /><Buttonandroid:id="@+id/btn_below"android:layout_width="100dp"android:layout_height="100dp"android:layout_below="@+id/btn_center"android:layout_margin="10dp"android:layout_toRightOf="@+id/btn_left"android:text="下" /></RelativeLayout>
实现的方式案例的方法还有多种,文章的内容理解不难,学习编程最重要的还是要动手实践,在实践过程中慢慢加深理解,学会熟练的运用各种属性搭配出更好的界面!