什么是RelativeLayout

RelativeLayout顾名思义,相对布局,在这个容器内部的子元素们可以使用彼此之间的相对位置或者和容器间的相对位置来进行定位。

注意:不能在RelativeLayout容器本身和他的子元素之间产生循环依赖。


与RelativeLayout相关的布局属性
android:layout_above 将该控件置于给定ID的控件之上
android:layout_below 将该控件的置于给定ID控件之下
android:layout_toLeftOf 将该控件置于给定ID的控件之左
android:layout_toRightOf 将该控件置于给定ID的控件之右

android:layout_alignBaseline 该控件基线对齐给定ID的基线
android:layout_alignBottom 该控件于给定ID的控件底部对齐
android:layout_alignLeft 该控件于给定ID的控件左对齐
android:layout_alignRight 该控件于给定ID的控件右对齐
android:layout_alignTop 该控件于给定ID的控件顶对齐

android:layout_alignParentLeft 如果为True,该控件位于父控件的左部
android:layout_alignParentRight 如果为True,该控件位于父控件的右部
android:layout_alignParentTop 如果为True,该控件位于父控件的顶部
android:layout_alignParentBottom 如果为True,该控件位于父控件的底部

android:layout_centerHorizontal 如果为True,该控件将被置于水平方向的中央
android:layout_centerInParent 如为Ture,该控件将被置于父控件水平方向和垂直方向
android:layout_centerVertical 如果为True,该控件将被置于垂直方向的中央


下面来实现这样一个简单的效果

Android之RelativeLayout相对布局_第1张图片

先来分析一下这个布局

首先是一个test1

    <TextView        android:id="@+id/tv1"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="test1"        android:background="#FF0000" />

然后,test2在test1的右边

    <TextView        android:id="@+id/tv2"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="test22"        android:background="#00FF00"        android:layout_toRightOf="@id/tv1" />

test3在test1的下边,并且和test2右对齐

    <TextView        android:id="@+id/tv3"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="test333"        android:background="#0000FF"        android:layout_below="@id/tv1"        android:layout_alignRight="@id/tv2" />

test4在父框架的底部

    <TextView        android:id="@+id/tv4"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="test4444"        android:background="#FFFF00"        android:layout_alignParentBottom="true" />

test5在父框架的水平垂直中央

    <TextView        android:id="@+id/tv5"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="test55555"        android:background="#FF00FF"        android:layout_centerInParent="true" />

test6在父框架的底部右边

    <TextView        android:id="@+id/tv6"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="test666666"        android:background="#00FFFF"        android:layout_alignParentRight="true"        android:layout_alignParentBottom="true" />

好了,关于Android之RelativeLayout相对布局就简单尝试到这里了,以后我们在开发布局过程中可以根据需要选择设置适当的属性,谢谢!


更多相关文章

  1. 学习android之布局
  2. Android布局--相对布局,RTL,用代码实现布局
  3. Android 软键盘弹出时布局位置改变
  4. 布局
  5. Android 绑定数据到界面控件
  6. Android布局之baselineAligned属性

随机推荐

  1. android studio生成签名文件,以及SHA1和MD
  2. [置顶] Android(安卓)AutoLayout全新的适
  3. cocos2d-x 跨平台特性之ios向android移植
  4. Android ExpandableListView 无child 时
  5. Android SDK 使用技巧
  6. Android(安卓)UI设计——TextView控件
  7. [android]android中的资源与国际化
  8. android 无线调试享受
  9. android屏幕截图并通过邮件发送
  10. android canvas 绘图笔记