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. [转]揭秘webdriver实现原理

    转自:http://www.cnblogs.com/timsheng/archive/2012/06/12/2546957.html 通过研究selenium-webdriver的源码,笔者发现其实w ...

  2. 使用ClipboardUtils兼容API LEVEL 11以下实现复杂粘贴

    实现功能:复杂粘贴内容 问题描述:android.content.ClipboardManager在APILevel 11之后才可以使用,而我们目前还要兼容API Level 10(2.3.3) 解决 ...

  3. linux red hat 安装svn

    安装步骤如下: 1.yum install subversion   2.输入rpm -ql subversion查看安装位置,如下图:   我们知道svn在bin目录下生成了几个二进制文件. 输入 ...

  4. @Html.DropDownList 设置选中值无效

    有时候在ASP.NET  MVC中用@Html.DropDownList 设置选中值无效,如图: 具体原因说不清,反正只要改个名字就行了!!!,如图:::

  5. 转:ecshop商品分类页获取相册列表方法

    ecshop商品分类页获取相册列表方法 很久之前就看到过你好在商品列表页有获取到相册列表,但是一直没有实践过,感觉应该挺简单的吧,但是最近手上的项目刚好就需要这个功能,然后就想到网上查下资料,至少找个 ...

  6. LeetCode: Unique Paths II 解题报告

    Unique Paths II Total Accepted: 31019 Total Submissions: 110866My Submissions Question Solution  Fol ...

  7. spring mvc jsp运行不起来的问题

    spring mvc已经处理成让jsp运行,即: <bean class="org.springframework.web.servlet.view.InternalResourceV ...

  8. iOS10 升级兼容必备参考

    最近提交审核不通过,再iOS10上运行崩溃 .然后需要处理崩溃的问题,晚上找了一下,整理收集起来. 方便后续查看使用. 以下参考链接特别有用: http://blog.csdn.net/gbking/ ...

  9. Android中AutoCompleteTextView的使用

    1.http://blog.csdn.net/FX_SKY/article/details/9326129 此博客讲解了auto组件如何使用baseAdapter来扩展功能,推荐参照此博客写demo ...

  10. saiku执行速度慢

    使用saiku的过程中发现一个重要问题,速度慢!下面是跟踪和优化过程 一.首先抓包,发现ajax请求:http://l-tdata2.tkt.cn6.qunar.com:8080/saiku/rest ...