当前位置: 首页 > news >正文

Android-相对布局RelativeLayout

相对布局在摆放子视图位置时,按照指定的参考系来摆放子视图的位置,默认以屏幕左上角(0,0)位置作为参考系摆放位置

了解一下接下来都会以代码的方式可视化出来

属性

可选值

说明

layout_alignParentTop

true/false

是否让控件相对于父容器顶部对齐

layout_alignParentBottom

true/false

是否让控件相对于父容器底部对齐

layout_alignParentLeft

true/false

是否让控件相对于父容器左边对齐

layout_alignParentRight

true/false

是否让控件相对于父容器右边对齐

layout_centerHorizontal

true/false

相对父容器水平居中显示

layout_centerVertical

true/false

相对父容器垂直居中显示

centerInParent

true/false

相对父容器居中显示

新建一个layout文件,如图所示

我们写一个按钮 设置颜色 你会发现 它距离上边框还有些距离,这是为什么呢? 我们点击按钮Attributes

你会发现这里有两个属性 insetTop和insetBottom分别被赋值为6dp,我们在代码中去更改

更改值发现就好了,这样这个按钮就从左上角(0,0)的位置开始摆放了1,这里加一个id

layout_alignParentTop:相对于父容器顶部对齐

我们添加代码android:layout_alignParentTop="true"发现没反应,换成false

也没有反应,说明我们原来这个按钮已经相对于顶部对齐了

layout_alignParentBottom:相对于父容器底部对齐

layout_alignParentLeft:相对于父容器左边对齐

按钮默认从左上角开始,所以这个演示意义不明显

layout_alignParentRight:是否让控件相对于父容器右边对齐

layout_centerHorizontal:相对父容器水平居中显示

layout_centerVertical:相对父容器垂直居中显示

centerInParent:相对父容器居中显示

  • 相对于兄弟元素 4个常用属性

属性

可选值

说明

layout_above

@+id/

指定在那个控件的上侧

layout_below

@+id/

指定在那个控件的下侧

android:layout_toLeftOf

@+id/

指定在那个控件的左侧

android:layout_toRightOf

@+id/

指定在那个控件的右侧

android:layout_below:指定在那个控件的下侧

android:layout_toRightOf:指定在那个控件的右侧

layout_above:指定在那个控件的上侧

android:layout_toLeftOf:指定在那个控件的左侧

  • 相对于兄弟元素的对齐方式

属性

可选值

说明

layout_alignLeft

@+id/

该控件的左边沿与指定控件的左边对齐

layout_aliginRight

@+id/

该控件的右边沿与指定控件的右边对齐

layout_alignTop

@+id/

该控件的上边沿与指定控件的上边沿对齐

layout_alignBottom

@+id/

该控件的下边沿与指定控件的下边沿对齐

layout_alignLeft:该控件的左边沿与指定控件的左边对齐


 

layout_aliginRight:该控件的右边沿与指定控件的右边对齐

layout_alignTop:该控件的上边沿与指定控件的上边沿对齐

layout_alignBottom:该控件的下边沿与指定控件的下边沿对齐

http://www.lryc.cn/news/507435.html

相关文章:

  • Centos7, 使用yum工具,出现 Could not resolve host: mirrorlist.centos.org
  • 在Linux中使用`scp`进行远程目录文件复制
  • VisionPro 机器视觉案例 之 连接件测量
  • C++ 中面向对象编程中对象的状态存储与恢复的处理
  • ip_output函数
  • 【win10+RAGFlow+Ollama】搭建本地大模型助手(教程+源码)
  • 现代风格VUE3易支付用户控制中心
  • CentOS 7 上自动安装 Python 3.9 脚本
  • Spring(二)---基于注解的方式实现Bean管理和注入属性
  • 采购管理系统的设计与实现【文档+源码】
  • Overleaf编译运行时间太长,国内如何支付升级Overleaf高级账户?
  • UE5喷涂功能
  • Unity局部和世界坐标系相互转换的实现原理
  • MySQL通用语法 -DDL、DML、DQL、DCL
  • C# 6.0 连接elasticsearch数据库
  • 占个坑:利用工作以外的时间,用numpy实现MLP-手写识别
  • 抽象之诗:C++模板的灵魂与边界
  • 后端统一接口返回状态【初步模板】
  • 呼入机器人:24小时客户服务的未来趋势
  • whisper.cpp: PC端测试 -- 电脑端部署音频大模型
  • WPF ControlTemplate 控件模板
  • 序列化和反序列化(一)
  • Kubeadm+Containerd部署k8s(v1.28.2)集群(非高可用版)
  • 取子串(指针)
  • Linux系列之如何更换Centos yum源?
  • 过滤器和拦截器的区别详解
  • centos使用mkisofs构建无人值守镜像(附官方学习文档)
  • Pyside6+qml+Qtcreator项目实战
  • 秒鲨后端之MyBatis【1】环境的搭建和核心配置文件详解
  • 编译原理复习---目标代码生成