Android-相对布局RelativeLayout

server/2024/12/22 12:33:54/

相对布局在摆放子视图位置时,按照指定的参考系来摆放子视图的位置,默认以屏幕左上角(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.ppmy.cn/server/152231.html

相关文章

【Rust自学】4.2. 所有权规则、内存与分配

4.2.0 写在正文之前 在学习了Rust的通用编程概念后,就来到了整个Rust的重中之重——所有权,它跟其他语言都不太一样,很多初学者觉得学起来很难。这个章节就旨在让初学者能够完全掌握这个特性。 本章有三小节: 所有权&#xff1…

弹性裸金属服务器(神龙):助力企业腾飞的云计算“黑科技”

在云计算飞速发展的今天,企业对于计算资源的需求早已不再满足于简单的“够用”,而是追求极致的性能、灵活的伸缩和数据安全的保障。那么,问题来了:如何在性能与弹性之间取得完美的平衡? 答案就是——阿里云弹性裸金属…

负载均衡+LNMP+rsync+NFS+lsync部署流程

负载均衡LNMPNFSrsynclsync部署流程 文章目录 负载均衡LNMPNFSrsynclsync部署流程服务器准备需求配置过程1.nfs服务器配置动态资源公共存储磁盘/data/wordpress2.db01服务器配置存放静态资源的数据库服务3.web两台服务器部署nginxPHP服务4.web两台服务器编写业务配置文件&#…

12_HTML5 Video(视频) --[HTML5 API 学习之旅]

HTML5 引入了 <video> 标签&#xff0c;使得在网页中嵌入和控制视频变得非常简单。<video> 元素允许你直接在 HTML 中指定视频文件&#xff0c;并提供了多种属性和方法来控制视频的播放、暂停、音量等。 基本用法 HTML5 的 <video> 标签让嵌入和控制视频变…

使用 datamodel-code-generator 从 MySQL 生成 Python 模型

使用 datamodel-code-generator 从 MySQL 生成 Python 模型 简介 datamodel-code-generator 是一个强大的工具&#xff0c;可以从多种数据源&#xff08;包括 MySQL&#xff09;自动生成 Python 数据模型。本文将详细介绍如何使用它从 MySQL 数据库生成 Pydantic 模型。 安装…

分布式数据库 OceanBase 的前世今生

文章目录 分布式数据库的开端OceanBase 2022 年度发布会为什么“小就是大”&#xff1f;商业化进程按下“加速键”向国际输出中国技术 OceanBase 2024 年度发布会为什么要做云数据库&#xff1f;2 年服务超 700 客户崭露头角一体化云数据库简化数据栈产品力和生态力是未来制胜关…

react 项目打包二级目 使用BrowserRouter 解决页面刷新404 找不到路由

使用BrowserRouter package 配置 &#xff08;这部分代码可以不做配置也能实现&#xff09; {"homepage": "/admin",}vite.config 配置 export default defineConfig({base: /admin])BrowserRouter 添加配置项 <BrowserRouter basename/admin>&l…

【Spring框架 三】

Spring框架 三 SpringWeb开发框架框架概述核心组件RESTful Web Services异常处理过滤器和拦截器 总结 Spring Spring框架是一个开源的Java应用程序框架&#xff0c;它提供了一种轻量级的解决方案&#xff0c;用于开发企业级Java应用程序。Spring框架的核心原则是依赖注入&…