相对布局RelativeLayout,继承自ViewGroup。相对布局的子组件的位置总是相对于兄弟组件或者父容器决定的。

RelativeLayout支持的XML属性:

android:gravity  setGravity(int):设置容器内子组件的对齐方式

android:ignoreGravity  setIgnoreGravity(int):设置哪个子组件不受gravity属性的影响

RelativeLayout有一个内部类RelativeLayout.LayoutParams来控制子组件的布局方式。

RelativeLayout.LayoutParams支持的XML属性例如以下:

第一类:属性值为true或false

    android:layout_centerHrizontal                                           水平居中

    android:layout_centerVertical                                            垂直居中

    android:layout_centerInparent                                           相对于父元素全然居中

    android:layout_alignParentBottom                                     贴紧父元素的下边缘

    android:layout_alignParentLeft                                          贴紧父元素的左边缘

    android:layout_alignParentRight                                        贴紧父元素的右边缘

    android:layout_alignParentTop                                          贴紧父元素的上边缘

    android:layout_alignWithParentIfMissing                            假设相应的兄弟元素找不到的话就以父元素做參照物

第二类:属性值必须为id的引用名“@id/id-name

    android:layout_below                          在某元素的下方

    android:layout_above                          在某元素的的上方

    android:layout_toLeftOf                       在某元素的左边

    android:layout_toRightOf                     在某元素的右边

android:layout_alignTop                      本元素的上边缘和某元素的的上边缘对齐

    android:layout_alignLeft                      本元素的左边缘和某元素的的左边缘对齐

    android:layout_alignBottom                 本元素的下边缘和某元素的的下边缘对齐

    android:layout_alignRight                    本元素的右边缘和某元素的的右边缘对齐

第三类:属性值为详细的像素值。如30dip,40px

    android:layout_marginBottom              离某元素底边缘的距离

    android:layout_marginLeft                   离某元素左边缘的距离

    android:layout_marginRight                 离某元素右边缘的距离

    android:layout_marginTop                   离某元素上边缘的距离

Android学习笔记(14):相对布局RelativeLayout的更多相关文章

  1. Android学习笔记④——页面的布局方式

    FrameLayout(帧布局) 这个布局的特点是简单的默认把每一个视图组件都放在边框内且放在左上角,即使添加多个视图组件,他们也都是重叠在左上角,新的视图会遮挡住旧的视图.可以根据gravity来改 ...

  2. android学习笔记三--Activity 布局

    1.线性布局 标签 :<LinearLayout></LinearLayout> 方向:android:orientation, 垂直:vertical 水平:Horizont ...

  3. Android学习笔记(11):线性布局LinearLayout

    线性布局LinearLayout是指在横向或是竖向一个接一个地排列.当排列的组件超出屏幕后,超出的组件将不会再显示出来. LinearLayout支持的XML属性和相应方法如表所看到的: Attrib ...

  4. android学习笔记14——GridView、ImageSwitcher

    GridView--网格视图.ImageSwitcher--图像切换器 ==> GridView,用于在界面上按行.列的分布形式显示多个组件:GridView和ListView父类相同——Abs ...

  5. Android学习笔记:FrameLayout布局基础

    FrameLayout布局的特点是:所有放在布局里的视图组件,都按照层次堆叠在屏幕的左上角,后面的视图组件覆盖前面的. 当然,组件本身是可以控制自己的内部布局的. 一种常见的场景是可以在FrameLa ...

  6. 【转】Pro Android学习笔记(二五):用户界面和控制(13):LinearLayout和TableLayout

    目录(?)[-] 布局Layout 线性布局LinearLayout 表格布局TableLayout 布局Layout Layout是容器,用于对所包含的view进行布局.layout是view的子类 ...

  7. android学习笔记36——使用原始XML文件

    XML文件 android中使用XML文件,需要开发者手动创建res/xml文件夹. 实例如下: book.xml==> <?xml version="1.0" enc ...

  8. Android学习笔记之JSON数据解析

    转载:Android学习笔记44:JSON数据解析 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种 ...

  9. Android学习笔记36:使用SQLite方式存储数据

    在Android中一共提供了5种数据存储方式,分别为: (1)Files:通过FileInputStream和FileOutputStream对文件进行操作.具体使用方法可以参阅博文<Andro ...

随机推荐

  1. zabbix4.2学习笔记--zabbix安装

    环境 系统信息 发行版 版本 ip 关系 主机名 centos 7.5 192.168.181.135 服务端 server centos 7.5 192.168.181.136 客户端 client ...

  2. B1. Concurrent 多线程的创建

    [概述] 多线程的创建常用的有两种方法:1). 继承 Thread 类: 2). 实现 Runnable 接口: 3). 实现 Callable 接口. [继承 Thread 类] /** * 1. ...

  3. python 导入beautifulsoup报错

    导入Beautifulsoup 报错 AttributeError: 'module' object has no attribute '_base' 解决方法:   pip install --up ...

  4. JS、CSS、Image预加载

    Image预加载 <div class="hidden"> <script type="text/javascript"> var im ...

  5. 看完这篇 你就能完全操作git 远程分支的增、删、改、查了

    最近项目中又用到了git所以在此总结一番,这篇主要针对的是怎么创建远程分支,如何删除远程分支. 首先,如何创建远程分支.将一系列前期准备工作准备完成后(创建\添加ssh): 在终端键入 git bra ...

  6. 零基础入门学习Python(29)--文件:一个任务

    知识点 一个任务:将文件(record.txt)中的数据进行分割并按照以下规律保存起来: #record.txt文件内容: 小客服:小甲鱼,今天有客户问你有没有女朋友? 小甲鱼:咦?? 小客服:我跟她 ...

  7. 零基础入门学习Python(15)--格式化

    前言 上节课我们介绍了字符串N多种奇葩方法的用法,但是我们唯独漏掉了format方法,那为何不把format方法和上节课的内容一起讲呢? 因为小甲鱼觉得format方法,跟今天的主题是如出一辙的,都是 ...

  8. python中基于tcp协议的通信(数据传输)

    tcp协议:流式协议(以数据流的形式通信传输).安全协议(收发信息都需收到确认信息才能完成收发,是一种双向通道的通信) tcp协议在OSI七层协议中属于传输层,它上承用户层的数据收发,下启网络层.数据 ...

  9. 2017 计蒜之道 初赛 第一场 A 阿里的新游戏

    题链:https://nanti.jisuanke.com/t/15499 这题观察图纸可知成三线段上的相邻点之间的距离有1,2,3三种情况的,同时要成线段必然是同横坐标或者纵坐标,然后我们排除掉穿过 ...

  10. jquery源码——noConflict实现

    实现方式很简单:在初始化的时候,记录当前全局中jQuery和$两个变量的的值,用_jQuery和_$分别存放,调用noConflict方法时,使用_jQuery和_$分别恢复对应的值,并且返回jQue ...