Android 布局之RelativeLayout


1 RelativeLayout简介

RelativeLayout是相对布局。

RelativeLayout布局属性

1.1 与parent相对的属性

android:layout_alignParentTop
表示widget的顶部和Container的顶部对齐。

android:layout_alignParentBottom
表示widget的底部和Container的底部对齐。

android:layout_alignParentStart
表示widget的左边和Container的起始边缘对齐。

android:layout_alignParentEnd
表示widget的左边和Container的结束边缘对齐。

android:layout_alignParentLeft
表示widget的左边和Container的左边对齐。

android:layout_alignParentRight
表示widget的右边和Container的右边对齐。

android:layout_centerInParent
表示widget处于Container平面上的正中间。

android:layout_alignWithParentIfMissing
若设置true,则当该控件layout_toLeftOf, layout_toRightOf等找不到相对的参考widget时,就以父container为参考。

1.2 与widget相对的属性

android:layout_above
表示该widget位于参数值标识的widget的上方。

android:layout_below
表示该widget位于参数值标识的widget的下方。

android:layout_alignTop
表示该widget的顶部参数值标识的widget的顶部对齐。

android:layout_alignBottom
表示该widget的底部与参数值标识的widget的底部对齐。

android:layout_alignStart
表示该widget的起始边缘与参数值标识的widget的起始边缘对齐。

android:layout_alignEnd
表示该widget的结束边缘与参数值标识的widget的结束边缘对齐。

android:layout_alignLeft
表示该widget的左边与参数值标识的widget的左边对齐。

android:layout_alignRight
表示该widget的右边参数值标识的widget的右边对齐。

android:layout_centerHorizontal
表示widget处于Container水平方向上的中间。

android:layout_centerVertical
表示widget处于Container垂直方向上的中间。

android:layout_alignBaseline
表示该widget的BaseLine与参数值标识的widget的BaseLine对齐。

android:layout_toLeftOf
表示该widget位于参数值标识的widget的左方。

android:layout_toRightOf
表示该widget位于参数值标识的widget的右方。

android:layout_toStartOf
表示该widget结束边缘与参数值标识的widget的起始边缘对齐

android:layout_toEndOf
表示该widget起始边缘与参数值标识的widget的结束边缘对齐


2 RelativeLayout示例

创建一个activity,包含1组RelativeLayout。

layout文件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingLeft="16dp"
android:paddingRight="16dp" >
<EditText
android:id="@+id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/reminder" />
<Button
android:id="@+id/cancel"
android:layout_width="96dp"
android:layout_height="wrap_content"
android:layout_below="@id/name"
android:layout_alignParentRight="true"
android:text="@string/cancel" />
<Button
android:id="@+id/ok"
android:layout_width="96dp"
android:layout_height="wrap_content"
android:layout_below="@id/name"
android:layout_toLeftOf="@id/cancel"
android:text="@string/ok" />
</RelativeLayout>

点击下载:源代码

运行效果:如图

Android 布局之RelativeLayout的更多相关文章

  1. Android布局之RelativeLayout

    RelativeLayout用到的一些重要的属性: 第一类:属性值为true或falseandroid:layout_centerHrizontal 水平居中android:layout_center ...

  2. Android布局及属性归总(查询用)

    常见布局 LinearLayout    线性布局        子元素任意,组织成一个单一的水平或垂直行,默认为水平方向TableLayout    表格布局        子元素为<Tabl ...

  3. Android的学习第六章(布局二--RelativeLayout)

    今天我们来说一下Android布局中的Relativelayout布局(相对布局) 根据英译过来意思是相对布局,很容易理解,这一样布局使用的是元素与元素之间的微调做到布局的 含义:通过元素与元素之间的 ...

  4. android LinearLayout和RelativeLayout实现精确布局

    先明确几个概念的区别: padding margin:都是边距的含义,关键问题得明白是什么相对什么的边距padding:是控件的内容相对控件的边缘的边距. margin  :是控件边缘相对父空间的边距 ...

  5. 用android LinearLayout和RelativeLayout实现精确布局(转)

    先明确几个概念的区别: padding margin都是边距的含义,关键问题得明白是什么相对什么的边距. padding是控件的内容相对控件的边缘的边距. margin是控件边缘相对父控件的边距. a ...

  6. [转]用android LinearLayout和RelativeLayout实现精确布局

    先明确几个概念的区别: padding margin都是边距的含义,关键问题得明白是什么相对什么的边距. padding是控件的内容相对控件的边缘的边距. margin是控件边缘相对父控件的边距. a ...

  7. Android精通:TableLayout布局,GridLayout网格布局,FrameLayout帧布局,AbsoluteLayout绝对布局,RelativeLayout相对布局

    在Android中提供了几个常用布局: LinearLayout线性布局 RelativeLayout相对布局 FrameLayout帧布局 AbsoluteLayout绝对布局 TableLayou ...

  8. Android精通:View与ViewGroup,LinearLayout线性布局,RelativeLayout相对布局,ListView列表组件

    UI的描述 对于Android应用程序中,所有用户界面元素都是由View和ViewGroup对象构建的.View是绘制在屏幕上能与用户进行交互的一个对象.而对于ViewGroup来说,则是一个用于存放 ...

  9. Android UI布局之RelativeLayout

    RelativeLayout是一个相对布局类. 首先RelativeLayout是一个容器,它里边的元素,如Buttonbutton等的位置是依照相对位置来计算的,比如,有两个Buttonbutton ...

随机推荐

  1. INSERT INTO .. ON DUPLICATE KEY更新多行记录

    现在问题来了,如果INSERT多行记录, ON DUPLICATE KEY UPDATE后面字段的值怎么指定?要知道一条INSERT语句中只能有一个ON DUPLICATE KEY UPDATE,到底 ...

  2. 使用Reveal查看任意App的技巧

    转:http://www.jianshu.com/p/4dc8f94ca27c 前言 Reveal(http://revealapp.com)是一个很强大的iOS View Hierarchy工具,与 ...

  3. C# 标签(条码)的打印与设计(一)

    C# 标签(条码)的打印与设计(一) C# 标签(条码)的打印与设计(二) 总结:自定义设计条码器.

  4. 多层嵌套对象无法使用gson反序列化的问题The JsonDeserializer com.google.gson.DefaultTypeAdapters$CollectionTypeAdapter@3bf13cde failed to de

    http://www.oschina.net/question/1256646_123691 http://bbs.csdn.net/topics/360005140 http://stackover ...

  5. 我所理解的JavaScript闭包

    目录 一.闭包(Closure) 1.1.什么是闭包? 1.2.为什么要用闭包(作用)? 1.2.1.保护函数内的变量安全. 1.2.2.通过访问外部变量,一个闭包可以暂时保存这些变量的上下文环境,当 ...

  6. linux 解压命令

    .tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!) ------------------------ ...

  7. mac 命令行 安装 需要管理员 权限

    Please try running this command again as root/Administrator. sudo chown -R $USER /usr/local

  8. WPF窗体的命令绑定

    方法一:使用代码 <WpfUI:View.CommandBindings> <CommandBinding Command="Help" CanExecute=& ...

  9. android实现自动升级并安装打开

    http://blog.csdn.net/wa991830558/article/details/41014673 这是一个比较简单的程序,但网上还是有很多人问起这个问题,并且回答的人,也没有完全回答 ...

  10. win10初体验,我的错误代码哪里去了

    今天闲着,就把WIN7升级安装成WIN10,感觉这次WIN10的升级方案确实还可以人,可以保留文件和配置升级. 升级完,试了一下宽带连接,发现错误代码没了,像下面的应该就691呢~~~