转载请注明博客地址。

最近看博客看到有关于RelativeLayout布局的解释,有的解释很多是错误的。因此有必要对每一个常见的布局属性进行描述。以下解释全部都是逐行进行测试的。

  1. 首先把常用的布局分组。(会对所有的对其方式解释,且主要讨论layout_alignleft layout_toleftof区别)
  2. android:layout_above 将该控件的底部至于给定ID的控件之上(只写一行代该控件底部与id控件上边缘对其,且默认于父布局左边)
  3. android:layout_below 将该控件的顶部至于给定ID的控件之下(只写一行代该控件顶部与id控件下边缘对其,且默认于父布局左边)
  4. android:layout_toLeftOf 将该控件的右边缘和给定ID的控件的左边缘对齐,默认是位于父布局的顶部
  5. android:layout_toRightOf 将该控件的左边缘和给定ID的控件的右边缘对齐,默认位于父布局的顶部
  6.  
  7. (默认父布局的左和上)
  8. android:layout_alignBaseline 该控件的baseline和给定ID的控件的baseline对齐
  9. android:layout_alignBottom 将该控件的底部边缘与给定ID控件的底部边缘对其(该控件还是默认位于父布局的左边)
  10. android:layout_alignTop 将给定控件的顶部边缘与给定ID控件的顶部对齐(该控件还是默认位于父布局的左边)效果和上边一样
  11. android:layout_alignLeft 将该控件的左边缘与给定ID控件的左边缘对齐(该控件默认位于父布局的上边)
  12. android:layout_alignRight 将该控件的右边缘与给定ID控件的右边缘对齐(该控件默认位于父布局的上边)此时效果和上边效果一样
  13.  
  14. (默认父布局的左和上) android:alignParentBottom 如果该值为true,则将该控件的底部和父控件的底部对齐(只写一行默认左下)
  15. android:layout_alignParentLeft 如果该值为true,则将该控件的左边与父控件的左边对齐(只写一条默认左上)
  16. android:layout_alignParentRight 如果该值为true,则将该控件的右边与父控件的右边对齐(默认右上)
  17. android:layout_alignParentTop 如果该值为true,则将空间的顶部与父控件的顶部对齐(只写一条默认左上)
  18.  
  19. (默认父布局的左和上)
  20. android:layout_centerHorizontal 如果值为真,该控件将被至于水平方向的中央(默认父布局的上方)
  21. android:layout_centerInParent 如果值为真,该控件将被至于父控件水平方向和垂直方向的中央
  22. android:layout_centerVertical 如果值为真,该控件将被至于垂直方向的中央(默认父布局的左边)
  1.  
  1.  

显然layout_alignleft layout_toleftof区别就一目了然。通过代码和图片再一次视觉上区分:

首先看layout_aliginleft:

  1. <RelativeLayout
  2. xmlns:android="http://schemas.android.com/apk/res/android"
  3. xmlns:tools="http://schemas.android.com/tools"
  4. android:layout_width="match_parent"
  5. android:layout_height="match_parent"
  6. tools:context="com.itheima.helloworld.MainActivity">
  7.  
  8. <Button
  9. android:id="@+id/button1"
  10. android:layout_width="wrap_content"
  11. android:layout_height="wrap_content"
  12. android:layout_centerInParent="true"
  13. android:text="button1"
  14. />
  15.  
  16. <Button
  17. android:id="@+id/button2"
  18. android:layout_width="wrap_content"
  19. android:layout_height="wrap_content"
  20. android:layout_alignLeft="@id/button1"
  21. android:text="button2"
  22. />
  23.  
  24. </RelativeLayout>

图片:

再来看layout_toleftof代码如下:

  1. <RelativeLayout
  2. xmlns:android="http://schemas.android.com/apk/res/android"
  3. xmlns:tools="http://schemas.android.com/tools"
  4. android:layout_width="match_parent"
  5. android:layout_height="match_parent"
  6. tools:context="com.itheima.helloworld.MainActivity">
  7.  
  8. <Button
  9. android:id="@+id/button1"
  10. android:layout_width="wrap_content"
  11. android:layout_height="wrap_content"
  12. android:layout_centerInParent="true"
  13. android:text="button1"
  14. />
  15.  
  16. <Button
  17. android:id="@+id/button2"
  18. android:layout_width="wrap_content"
  19. android:layout_height="wrap_content"
  20. android:layout_toLeftOf="@id/button1"
  21. android:text="button2"
  22. />
  23.  
  24. </RelativeLayout>

图片如下:

对于相对布局的基本用法,应该一目了然。

android:layout_alignleft layout_toleftof区别,详解RelativeLayout布局属性的更多相关文章

  1. android:padding和android:margin的区别 详解

    转载请说明博客地址:http://blog.csdn.net/qq_32059827/article/details/51487997 看了网上的类似博客,并没有给出确定的区别.现在具体分析一下pad ...

  2. Android中Intent传值与Bundle传值的区别详解

    Android中Intent传值与Bundle传值的区别详解 举个例子我现在要从A界面跳转到B界面或者C界面   这样的话 我就需要写2个Intent如果你还要涉及的传值的话 你的Intent就要写两 ...

  3. Android 三种动画详解

    [工匠若水 http://blog.csdn.net/yanbober 转载请注明出处.点我开始Android技术交流] 1 背景 不能只分析源码呀,分析的同时也要整理归纳基础知识,刚好有人微博私信让 ...

  4. Android中mesure过程详解

    我们在编写layout的xml文件时会碰到layout_width和layout_height两个属性,对于这两个属性我们有三种选择:赋值成具体的数值,match_parent或者wrap_conte ...

  5. [转]ANDROID L——Material Design详解(动画篇)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 转自:http://blog.csdn.net/a396901990/article/de ...

  6. Android事件传递机制详解及最新源码分析——ViewGroup篇

    版权声明:本文出自汪磊的博客,转载请务必注明出处. 在上一篇<Android事件传递机制详解及最新源码分析--View篇>中,详细讲解了View事件的传递机制,没掌握或者掌握不扎实的小伙伴 ...

  7. Android目录结构(详解)

    Android目录结构(详解) 下面是HelloAndroid项目在eclipse中的目录层次结构: 由上图可以看出项目的根目录下共有九个文件(夹),下面就这九个文件(夹)进行详解: 1.1src文件 ...

  8. 《Android NFC 开发实战详解 》简介+源码+样章+勘误ING

    <Android NFC 开发实战详解>简介+源码+样章+勘误ING SkySeraph Mar. 14th  2014 Email:skyseraph00@163.com 更多精彩请直接 ...

  9. ANDROID L——Material Design详解(UI控件)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! Android L: Google已经确认Android L就是Android Lolli ...

随机推荐

  1. python if判断语句&计算

    python对缩进要求严格,代码块里的缩进必须一样,可以常用 tab键  表示4个空格 if 条件: 代码块 else: if判断语句如下: 1 print("吃饭,喝水,回家") ...

  2. SpringMVC 教程 - Handler Method

    原文链接:https://www.codemore.top/cates/Backend/post/2018-04-21/spring-mvc-handler-methods 由注解@RequestMa ...

  3. Kirill And The Game CodeForces - 842A

    CodeForces - 842A 需要将除法改换成乘法进行计算 #include<bits/stdc++.h> using namespace std; int main() { lon ...

  4. About Windows 10 April 2018 Update

    在四月的最后一天,微软终于正式发布了 Windows 10 的又一次重大更新,并命名为 Windows 10 四月更新,轮压哨,我软确实谁也不服:再晚一天,我软改名部门恐怕又要发挥作用了,毕竟我软存在 ...

  5. 关于前端HTML你需要知道的一切

    1.H系列标签(Header 1~Header 6) 作用: 用于给文本添加标题语义 格式: <h1>xxxxxx</h1> 注意点: H标签是用来给文本添加标题语义的, 而不 ...

  6. ANT不完全总结,包含各种命令,ant例子等,转自:http://lavasoft.blog.51cto.com/62575/87306

    ANT不完全总结   好久没有用Ant了,最近让MyEclipse.JBuilder2008逼的重回Ant上了.手生了,写了一个脚本后,重新总结下.参考了官方的文档和网上一些资料.   一.ANT的介 ...

  7. FFmpeg的HEVC解码器源代码简单分析:解析器(Parser)部分

    ===================================================== HEVC源代码分析文章列表: [解码 -libavcodec HEVC 解码器] FFmpe ...

  8. XMPP(二)-基于asmack+openfire的安卓客户端(仿QQ)的介绍以及个人心得

    关于XMPP第一篇-openfire的搭建写完后,就一直在赶本篇所要介绍的这个基于asmack+openfire的安卓客户端,费了不少精力,因为有不少同学在还在焦急的等待着(自恋了呵呵),所以紧赶慢赶 ...

  9. Dynamics CRM 为Visual Studio 2015安装CRM Developer Toolkit

    从CRM2015的SDK以后Tools的文件夹里就没有了DeveloperToolkit,而DeveloperToolkit还是停留在VS2012版本,这对于我们这种用新版本的童鞋来说比较头疼,我本地 ...

  10. Ubuntu下配置Telnet服务器

    1. 首先介绍linux中的守护进程 在Linux系统中有一个特殊的守护进程inetd(InterNET services Daemon),它用于Internet标准服务,通常在系统启动时启动.通过命 ...