Android——RelativeLayout(相对布局)
一、相对于父容器
1.居中
2.同方向
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"> <!--相对于父容器
1.居中
2.同方向对齐方式
-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮一"
android:layout_centerInParent="true"
/><!--位于父容器居中位置-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮二"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
/><!--与父容器底端对齐-->
<!--位于父容器水平居中位置-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮三"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
/><!--与父容器右侧对齐-->
<!--位于父容器垂直居中位置-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮四"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
/><!--与父容器左侧对齐-->
<!--位于父容器垂直居中位置-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮五"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
/><!--与父容器顶端对齐-->
<!--位于父容器水平居中位置-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮六"
/><!--与父容器左侧对齐-->
<!--与父容器顶端对齐-->
<!--默认位置-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮七"
android:layout_alignParentRight="true"
/><!--与父容器右侧对齐-->
<!--与父容器顶端对齐-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮八"
android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
/><!--与父容器左侧对齐-->
<!--与父容器底端对齐-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮十"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
/><!--与父容器右侧对齐-->
<!--与父容器底端对齐-->
</RelativeLayout>
二、与兄弟组件的相对位置
1.同方向
2.反方向
+lay_outmargin +padding
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!--与兄弟组件之间
1.同方向
2.反方向--> <!--margin 外边距
padding 内间距
-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮一"
android:layout_centerInParent="true"
android:id="@+id/bt"/><!--父容器内居中-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮二"
android:layout_alignTop="@id/bt"
android:layout_toLeftOf="@id/bt"/>
//相对于按钮一 顶部对齐 位于左侧 <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮三"
android:layout_alignRight="@id/bt"
android:layout_above="@id/bt"/>
//相对于按钮一 右侧对齐 位于上方
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮四"
android:layout_alignRight="@id/bt"
android:layout_below="@id/bt"/>
//相对于按钮一 右侧对齐 位于下方
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮五"
android:layout_alignTop="@id/bt"
android:layout_toRightOf="@id/bt"/>
//相对于按钮一 顶部对齐 位于右侧
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮六"
android:layout_toRightOf="@id/bt"
android:layout_below="@id/bt"/>
//相对于按钮一 位于右侧 位于下方
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮七"
android:layout_toRightOf="@id/bt"
android:layout_above="@id/bt"/>
//相对于按钮一 位于右侧 位于上方 <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮八"
android:layout_toLeftOf="@id/bt"
android:layout_above="@id/bt"/>
//相对于按钮一 位于左侧 位于上方 <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮九"
android:layout_toLeftOf="@id/bt"
android:layout_below="@id/bt"/>
//相对于按钮一 位于左侧 位于下方
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="输入框"
android:id="@+id/et"
android:paddingLeft="20dp"
android:layout_marginTop="20dp"
android:layout_marginBottom="10dp"/>
//内左侧间距20dp 上边距20dp 下边距10dp <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="OK"
android:layout_alignParentRight="true"
android:layout_below="@id/et"
android:id="@+id/ok"/>
//ok按钮 位于父窗口右侧 输入框下方
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CANCLE"
android:layout_alignTop="@id/ok"
android:layout_toLeftOf="@id/ok"
android:layout_marginRight="20dp"/>
//cancle按钮 相对于ok按钮顶部对齐 位于左侧 右边距20dp </RelativeLayout>
Android——RelativeLayout(相对布局)的更多相关文章
- Android RelativeLayout相对布局
RelativeLayout是相对布局控件:以控件之间相对位置或相对父容器位置进行排列. 相对布局常用属性: 子类控件相对子类控件:值是另外一个控件的id android:layout_above-- ...
- Android开发重点难点1:RelativeLayout(相对布局)详解
前言 啦啦啦~博主又推出了一个新的系列啦~ 之前的Android开发系列主要以完成实验的过程为主,经常会综合许多知识来写,所以难免会有知识点的交杂,给人一种混乱的感觉. 所以博主推出“重点难点”系列, ...
- Android开发3:Intent、Bundle的使用和ListView的应用 、RelativeLayout(相对布局)简述(简单通讯录的实现)
前言 啦啦啦~博主又来骚扰大家啦~大家是不是感觉上次的Android开发博文有点长呢~主要是因为博主也是小白,在做实验的过程中查询了很多很多概念,努力去理解每一个知识点,才完成了最终的实验.还有就是随 ...
- Android(java)学习笔记164:Relativelayout相对布局案例
我们看看案例代码,自己心领神会: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout ...
- 第13章、布局Layouts之RelativeLayout相对布局(从零開始学Android)
RelativeLayout相对布局 RelativeLayout是一种相对布局,控件的位置是依照相对位置来计算的,后一个控件在什么位置依赖于前一个控件的基本位置,是布局最经常使用,也是最灵活的一种布 ...
- Android开发之布局--RelativeLayout布局
RelativeLayout 相对布局 true或false属性 Layout_centerHorizontal 当控件位于父控件的横向中间位置 Layout_centerVertical 当 ...
- Android精通:TableLayout布局,GridLayout网格布局,FrameLayout帧布局,AbsoluteLayout绝对布局,RelativeLayout相对布局
在Android中提供了几个常用布局: LinearLayout线性布局 RelativeLayout相对布局 FrameLayout帧布局 AbsoluteLayout绝对布局 TableLayou ...
- Android精通:View与ViewGroup,LinearLayout线性布局,RelativeLayout相对布局,ListView列表组件
UI的描述 对于Android应用程序中,所有用户界面元素都是由View和ViewGroup对象构建的.View是绘制在屏幕上能与用户进行交互的一个对象.而对于ViewGroup来说,则是一个用于存放 ...
- Android(java)学习笔记107:Relativelayout相对布局
1. Relativelayout相对布局案例: 我们看看案例代码,自己心领神会: <?xml version="1.0" encoding="utf-8" ...
随机推荐
- 使用Intellij加载Spark源代码
如何使用Intellij加载Spark源代码 转载注明原文http://www.cnblogs.com/shenh062326/p/6189643.html 查看Spark源代码或修改Spark源代码 ...
- zedboard--嵌入式网络摄像机(mjpg-streamer)的移植和搭建(二十二)
在zedboard上移植和搭建嵌入式网络摄像机mjpg-streamer.具体步骤如下: 来自:http://write.blog.csdn.net/postedit/13741451 1.安装lib ...
- Linux挂载命令mount用法及参数详解
导读 mount是Linux下的一个命令,它可以将分区挂接到Linux的一个文件夹下,从而将分区和该目录联系起来,因此我们只要访问这个文件夹,就相当于访问该分区了. 挂接命令(mount) 首先,介绍 ...
- angularjs中的$eval方法
在controller中定义了一个变量 $scope.a_1 = "abc"; 想在view里面动态输出,因为这个数字是动态的,这么输出肯定是不行的{{'a_' + '1'}},因 ...
- busybox hexdump 命令使用
http://blog.sina.com.cn/s/blog_a6559d920101gvlk.html hexdump命令是Linux下的打印16进制的利器,它可以按我们指定的格式输出16进制,特别 ...
- TP5.0生成模块(home/admin)命令
TP5.0> 进入项目根目录(tp5/),执行以下命令: > php think make:controller 模块名/控制器名 //语法 > php think make:con ...
- ubuntu 将"/TMP"挂载到内存中
一.修改"/etc/fstab"文件: sudo gedit /etc/fstab 二.在文件中添加下列语句: 1, # / was on /dev/s ...
- 设置linux中tcp默认的20秒connect超时时间(转)
无论你用任何语言或者是网络库,你都可以设置网络操作的超时时间,特别是connect.read.write的超时时间. 你可以在代码中把超时时间设置任意大小值,但是connect方法会有一点特殊. co ...
- FFmpeg进行屏幕录像和录音
文章转自:http://www.cucer.cn/2016/03/10/ffmpeg-screen-capture.html 有些时候我们需要对屏幕进行录制,比如制作视频教程,录制直播等.然而这方面的 ...
- scanf深究
例子: #include <stdio.h>#include <string.h> main(){ char buffer[1024]; scanf("%s" ...