安卓基本布局(上)

news2024/9/23 15:28:02

文章目录

      • LinerLayout线性布局
      • RelativeLayout相对布局
        • 根据父容器定位
        • 根据兄弟组件定位
        • margin偏移
        • padding填充

LinerLayout线性布局

  以水平或垂直的方式来排列界面中的控件。

常用属性详细描述
orientation布局中组件的排列方式。horizonta:水平;vertical:竖直(默认)。
gravity控制组件所包含的子元素的对齐方式,可以多个组合。
layout_gravity控制该组件在父容器里的对齐方式
layout_width布局宽度,wrap_content:组件实际大小;fill_parent、match_parent:填满父容器;固定值。
layout_height布局高度,wrap_content:组件实际大小;fill_parent、match_parent:填满父容器;固定值。
id为该组件设置一个资源id,在Java文件中可以通过findViewById找到该组件
background为该组件设置一个背景图片或直接用颜色覆盖
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">

    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:background="#ADFF2F"
        android:layout_weight="3"
        android:gravity="bottom|left">
        <Button
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="one"
            />
        <Button
            android:layout_weight="3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="two"
            />
    </LinearLayout>


    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:background="#DA70D6"
        android:layout_weight="1"/>

</LinearLayout>

在这里插入图片描述

RelativeLayout相对布局

  通过相对定位的方式让控件出现在布局的任何位置。

基本属性详细描述
gravity设置容器内组件的对齐方式。
ignoreGravity该属性为true的组件,将不受gravity属性影响。
根据父容器定位
属性描述
layout_alignParentLeft左对齐
layout_alignParentRight右对齐
layout_alignParentTop顶部对齐
layout_alignParentBottom底部对齐
layout_centerHorizontal水平居中
layout_centerVertical垂直居中
layout_centerInParent中间居中
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
	<!-- 1会被2覆盖-->
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text="1" />
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:text="2" />
    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:text="3" />
    <Button
        android:id="@+id/button4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:text="4" />
    <Button
        android:id="@+id/button5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:text="5" />
    <!-- 6会被7覆盖-->
    <Button
        android:id="@+id/button6"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentBottom="true"
        android:text="6" />
    <Button
        android:id="@+id/button7"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:text="7" />
    <Button
        android:id="@+id/button8"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true"
        android:text="8" />
    <Button
        android:id="@+id/button9"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="9" />
</RelativeLayout>

在这里插入图片描述

根据兄弟组件定位
属性描述
layout_toLeftOf参考组件的左边
layout_toRightOf参考组件的右边
layout_above参考组件的上方
layout_belove参考组件的下方
layout_alignTop对齐参考组件的上边界
layout_alignBottom对齐参考组件的下边界
layout_alignLeft对齐参考组件的左边界
layout_alignRight对齐参考组件的右边界
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TextView
        android:id="@+id/textview"
        android:layout_width="200dp"
        android:layout_height="200dp"
        android:background="#13d169"
        android:layout_centerInParent="true" />
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toLeftOf="@+id/textview"
        android:text="1" />
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/textview"
        android:text="2" />
    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/textview"
        android:text="3" />
    <Button
        android:id="@+id/button4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textview"
        android:text="4" />
    <Button
        android:id="@+id/button5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/textview"
        android:text="5" />
    <Button
        android:id="@+id/button6"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/textview"
        android:text="6" />
    <Button
        android:id="@+id/button7"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textview"
        android:text="7" />
    <Button
        android:id="@+id/button8"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignRight="@+id/textview"
        android:text="8" />
</RelativeLayout>

在这里插入图片描述

margin偏移
属性描述
layout_margin设置组件上下左右的偏移量
layout_marginLeft设置组件离左边的偏移量
layout_marginRight设置组件离右边的偏移量
layout_marginTop设置组件离上面的偏移量
layout_marginBottom设置组件离下面的偏移量
padding填充
属性描述
padding向内部元素的上下左右填充一定边距
paddingLeft向内部元素的左边填充一定边距
paddingRight向内部元素的右边填充一定边距
paddingTop向内部元素的上方填充一定边距
paddingBottom向内部元素的下方填充一定边距

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1976573.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GPT-4o mini模型:小型化AI解决方案的创新应用案例

文章目录 每日一句正能量前言开发者视角初步接触与性能评估集成与开发流程成本效益分析创新应用案例面临的挑战与解决方案社区贡献与经验分享未来展望 性能评估处理能力与响应速度准确性与可靠性多功能性与灵活性资源效率可扩展性与集成性用户定制与微调 结论 成本效益分析初始…

C语言基础知识之函数指针和指针函数

函数指针和指针函数 函数指针和指针函数指向函数的指针返回指针值的函数指针函数和函数指针的区别 问题1_1代码1_1结果1_1 函数指针和指针函数 指向函数的指针 用函数指针变量调用函数 可以用指针变量指向整型变量、字符串、数组&#xff0c;也可以指向一个函数。一个…

ctfshow-web入门-sql注入(web176-web180)

目录 1、web176 2、web177 3、web178 4、web179 5、web180 1、web176 1 order by 4-- 闭合后简单判断了下字段数是 3 测试联合查询注入&#xff0c;存在关键字的过滤&#xff0c;包括 select 和 union &#xff08;后面经过测试实际只过滤了 select&#xff09; 大小写绕…

常⻅CMS漏洞

常⻅CMS漏洞 ⼀&#xff1a;WordPress ​ WordPress是⼀个以PHP和MySQL为平台的⾃由开源的博客软件和内容管理系统。WordPress具 有插件架构和模板系统。截⾄2018年4⽉&#xff0c;排名前1000万的⽹站中超过30.6%使⽤WordPress。 WordPress是最受欢迎的⽹站 内容管理系统。全…

Linux网络之多路转接——实用的epoll

目录 一、高级IO 1.1 概念 1.2 五种IO模型 1.3 小结 二、多路转接的实用派 2.1 epoll 接口 2.1.1 epoll_create 2.1.2 epoll_ctl 2.1.3 epoll_wait 2.2 epoll 底层原理 2.2.1 epoll_ctl 2.2.2 epoll_wait 2.2.3 epoll_create 三、 epoll 类的编写 3.1 类的框…

大数据-64 Kafka 高级特性 分区 分区重新分配 实测

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 目前已经更新到了&#xff1a; Hadoop&#xff08;已更完&#xff09;HDFS&#xff08;已更完&#xff09;MapReduce&#xff08;已更完&am…

使用uwsgi部署Flask应用

前言&#xff1a;本人大四&#xff0c;研0&#xff0c;在24年暑假在杭州某互联网公司实习&#xff0c;本文用来记录自己在公司学到的东西。 uwsgi&#xff1a;uWSGI是一个Web服务器&#xff0c;它实现了WSGI协议、uwsgi、http等协议。Nginx中HttpUwsgiModule的作用是与uWSGI服…

集合的基本使用

数据和集合的区别 数组可以存储基本数据类型和引用数据类型。 但是&#xff0c;集合不可以直接存储基本数据类型&#xff0c;需要以包装类的方式进行存储&#xff0c;其可以存储引用数据类型。 ArrayList 成员方法 import java.util.ArrayList;/*** ClassName Test* author …

[Meachines] [Easy] Postman redis未授权访问-SSH公钥注入+RSA私钥解密+Webmin-RCE权限提升

信息收集 IP AddressOpening Ports10.10.10.160TCP:22,80,6379,10000 $ nmap -p- 10.10.10.160 --min-rate 1000 -sC -sV PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: | 2048…

计算机基础(Windows 10+Office 2016)教程 —— 第7章 演示文稿软件PowerPoint 2016

第7章 演示文稿软件PowerPoint 2016 7.1 PowerPoint 2016入门7.1.1 PowerPoint 2016 简介7.1.2 PowerPoint 2016 的操作界面组成7.1.3 PowerPoint 2016 的窗口视图方式7.1.4 PowerPoint 2016 的演示文稿及其操作7.1.5 PowerPoint 2016 的幻灯片及其操作 7.2 演示文稿的编辑与设…

win 10 局域网共享

1&#xff0c;打开共享 控制面板\网络和 Internet\网络和共享中心\高级共享设置 &#xff08;在控制面板界面建议使用大图片或小图标容易找到目标&#xff09; 或者直接复制红色部分&#xff0c;然后打开此电脑&#xff0c;粘贴到地址栏直接回车即可直接到达几面 打开如下2个…

HCIP-综合实验

实验题目与要求如下所示&#xff1a; 根据题目要求进行划分网段&#xff1a; 1、配置各个路由器的ip地址以及环回地址&#xff1a; R1 R2 R3 R4 R5 R6 R7 2、配置rip的基本功能&#xff1a;启动rip进程&#xff0c;指定网段使用rip R1 R2 R3 R4 R5 R6 R7 3、R1创建环回172.…

微信答题小程序产品研发-页面交互设计

答题小程序页面交互设计&#xff0c;针对答题小程序的所有主要页面和功能模块&#xff0c;包括首页、轮播图、公告、微信授权登录、题库练习、出题考试、错题集、答题历史、收藏、个人中心等。 1、目的 答题小程序页面为什么要进行交互设计&#xff1f; 据我分析&#xff0c;…

品牌热度维系策略:深度触达,让每一次互动都成为爱的记忆累积

在浩瀚的商业宇宙中&#xff0c;每一个品牌都如同夜空中闪烁的星辰&#xff0c;它们或明或暗&#xff0c;共同编织着市场的繁星图景。当谈及品牌与消费者之间那份微妙而深邃的情感联结时&#xff0c;我们不禁要深入探讨一个核心议题&#xff1a;在快速迭代的消费时代&#xff0…

二十天刷leetcode【hot100】算法- day1[后端golang]

哈希表 其他语言版本 ts-day1 js-day1 python-day1 1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xf…

ue5 打开关卡,未正常加载地形及物品。资产必须放在content目录下

1.资产必须放在content目录下 2.要把A拿到B去用&#xff0c;必须使用资产迁移&#xff0c;不可直接拷贝&#xff0c;因为有依赖文件

Qt 学习第四天:信号和槽机制(核心特征)

信号和槽的简介 信号和插槽用于对象之间的通信。信号和插槽机制是Qt的核心特征&#xff0c;可能是不同的部分大部分来自其他框架提供的特性。信号和槽是由Qt的元对象系统实现的。介绍&#xff08;来自Qt帮助文档Signals & Slots&#xff09; 在GUI编程中&#xff0c;当我们…

安装sqllab靶机之后,练习关卡报403 forbidden

解决办法&#xff1a; 在nginx的conf文件中添加上访问index.php vim /usr/local/nginx/conf/nginx.conf 保存退出 再重启一下nginx&#xff0c;就完成了。 ./nginx -s reload

中国AI大模型场景探索及产业应用调研报告

AI大模型发展态势 定义 AI大模型是指在机器学习和深度学习领域中&#xff0c;采用大规模参数(至少在一亿个以上)的神经网络模型&#xff0c;AI大模型在训练过程中需要使用大量的算力和高质量的数据资源。 产业规模 2023年&#xff0c;中国大模型市场规模为147亿。结合《202…

python pip怎么安装包

按WinR键打开运行窗口&#xff0c;输入“cmd”&#xff0c;再按回车键&#xff0c;打开命令行窗口。 找到pip安装路径。 Python2/Python3安装路径是相同的&#xff0c;都在x:\Python xx\Scripts路径下。 拖动pip主应用程序到命令行窗口。 输入“install 模块/包名”&#xff…