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

Android个性名片界面的设计——约束布局的应用

节选自《Android应用开发项目式教程》,机械工业出版社,2024年7月出版
做最简单的安卓入门教程,手把手视频、代码、答疑全配齐

【任务目标】
使用约束布局、TextView控件实现一个个性名片界面的设计,界面如图1所示。
在这里插入图片描述
图1 个性名片界面图
【任务分析】
上述界面可以使用约束布局、线性布局、表格布局来实现,使用约束布局实现较为灵活方便,这里可以采用约束布局中的辅助线,将界面分解为10个区域,再对每个区域中的TextView控件设置约束。
信息安全和隐私保护是每个人都应该关注的重要问题。我们应该加强自我保护意识。不要轻易上传个人信息,尤其是在陌生的平台或网站。此外,我们还应该注意分享信息时的安全问题。本项目开发的个性名片要注意保护个人隐私,不要轻易上传个人信息或分享给陌生人。总之,保护自己的信息安全和隐私是一项长期而艰巨的任务。我们需要时刻保持警惕,采取必要的措施来保护自己的隐私和信息安全。
【任务实施】
1.新建工程项目CallingCard(参考项目1)
2.修改页面布局文件activity_main.xml
1)默认打开的activity_main.xml,如图所示。首先选中“Hello World!”TextView控件,单击Delete键将其删掉。
2)将Plalette区的TextView控件拖到设计预览区,连续拖8个TextView到该区域。
在这里插入图片描述

图2 个性名片步骤2

3)选中一个TextView控件,单击侧边栏的Attributes,打开Attributes窗口,将被选中控件的text属性值修改为“姓名”,其他TextView控件依此类推。
在这里插入图片描述
图3 修改text属性
4)选中界面中所有的TextView控件,单击Attributes窗口的搜索框,搜索“text”属性,整体修改TextView控件的字体大小为20sp,颜色为#3F51B5,修改完后,界面如图4所示。
在这里插入图片描述

图4 修改textSize和textColor属性
5)添加4根横向辅助线,1根纵向辅助线,横向辅助线位置分别为界面垂直方向的15%、30%、45%、60%处,纵向辅助线为界面水平方向的35%,将整个界面分成10个区域,如图5所示。
在这里插入图片描述

图5 添加水平辅助线

6)接着添加TextView控件的位置约束,将其分布在界面上方的8个区域中心,如图所示。首先确定姓名TextView控件的位置,如图6所示。其他TextView控件的位置可以使用相同的方法确定约束,也可以使用对齐工具 中的 来确定位置。
在这里插入图片描述
图6 添加控件约束
7)所有TextView控件的位置约束添加完成后,如图7所示。
在这里插入图片描述
图7 约束完成图

8)运行此App,如无错误则完成此项目。如有错误,可以查看所有控件位置是否完全确定,如果不完全确定,Component Tree区会出现错误提示,如图8所示。
在这里插入图片描述

图8 约束布局错误提示
编译运行应用,效果如图9所示。
在这里插入图片描述

图9 个性名片运行效果图

2.4.1Android安卓开发之个性名片界面的设计约束布局实操ConstraintLayout

更多内容见《Android应用开发项目式教程》,做最简单的安卓入门教程,手把手视频、代码、答疑全配齐
在这里插入图片描述

相关文章:

Android个性名片界面的设计——约束布局的应用

节选自《Android应用开发项目式教程》,机械工业出版社,2024年7月出版 做最简单的安卓入门教程,手把手视频、代码、答疑全配齐 【任务目标】 使用约束布局、TextView控件实现一个个性名片界面的设计,界面如图1所示。 图1 个性名片…...

Python 课程18-SQLAlchemy

前言 SQLAlchemy 是一个功能强大的 Python SQL 工具包和对象关系映射(ORM)库,它使得开发者能够通过 Python 代码与数据库进行交互,而不必编写 SQL 查询。SQLAlchemy 提供了对多种数据库的支持,包括 MySQL、PostgreSQL…...

Module did not self-register: ‘drivelist.node‘报错解决

报错如下: node_modules/bindings/bindings.js:121throw e;^Error: Module did not self-register: xxxx/node_modules/drivelist/build/Release/drivelist.node.at process.func [as dlopen] (electron/js2c/asar.js:140:31)at Object.Module._extensions..node (…...

zabbix基本概念与组件

文章目录 一、zabbix简介二、​​​​​​​zabbix构成三、​​​​​​​zabbix监控对象四、​​​​​​​zabbix常用术语五、 Zabbix 6.0 新特性1.Zabbix server高可用防止硬件故障或计划维护期的停机2.Kubernetes系统从多个维度采集指标 六、zabbix 工作原理1、主动模式2、…...

Linux常用网络工具及示例

Linux系统中有许多用于网络管理、监控和故障排除的工具。以下是一些常用的网络工具及其基本用法示例: 1. ping - 测试主机之间的网络连接。 ping www.google.com 2. netstat - 显示网络连接、路由表、接口统计等信息。 netstat -an # 显示所有网络连接和监听…...

Go容器化微服务系统实战

1-1 本课的go微服务有什么不同? 聚焦于容器化可观测的购物微服务系统实战,通过介绍Go语言的应用趋势、容器化优势及微服务适用性,旨在解决学习微服务过程中遇到的难点。课程内容涵盖微服务整体架构、技术工具框架及容器平台等关键技术&#…...

研究生三年概括

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、研一1.上学期2. 下学期 二、研二1.研二上2.研二下 三、研三1.研三上2.研三下 前言 不知道是谁说的了,人生的路很长,关键的就那么几…...

MongoDB在Linux系统中的安装与配置指南

在这篇文章中,我们将介绍如何在CentOS 7服务器上安装MongoDB,并通过DataX将数据从MongoDB迁移到MySQL数据库。这将包括MongoDB的安装、配置、数据准备以及使用DataX进行数据迁移的详细步骤。 MongoDB简介 MongoDB是一个高性能、开源、无模式的文档型数据…...

Linux下如何实现不用加路径调用启动脚本

配置Systemctl启动 Linux下便于启停服务,可以配置systemcl,配置如下描述 说明 只有root用户可配置,文件路径为 /etc/systemd/system/XXX.service,本文将用nginx.service举例说明 1、创建文件 首先创建一个nginx.service文件,用于配置ngi…...

编程练习2 数据单元的变量替换

示例1: 1,2<A>00 示例2: 1,2<A>00,3<A>00 示例3: <B>12,1,2<B>1 示例4: <B<12,1 输出依次如下&#xff1a; #include<iostream> #include<vector> #include<string>using namespace std;/* 字符分割函数 将传入…...

mysql的查询操作

MySQL的查询操作是数据库管理和数据检索的核心。通过SQL&#xff08;Structured Query Language&#xff0c;结构化查询语言&#xff09;语句&#xff0c;用户可以执行包括数据检索、数据插入、更新和删除在内的多种操作。在本文中&#xff0c;我们将重点讨论数据检索&#xff…...

0基础学前端 day2

大家好&#xff0c;欢迎来到无限大的频道。 今天继续带领大家开始0基础学前端。 一、CSS简介与基础 层叠样式表&#xff08;CSS&#xff0c;Cascading Style Sheets&#xff09;是用来进行网页样式和布局设计的语言。通过CSS&#xff0c;开发者可以控制网页中元素的颜色、字体…...

Invalid Executable The executable contains bitcode

Invalid Executable The executable contains bitcode xcode世界xcode16后&#xff0c;打包上传testflight时三方库报错&#xff1a;Invalid Executable - The executable ***.app/Frameworks/xxx.framework/xxx contains bitcode. 解决方案&#xff1a; 执行一下指令删除该f…...

音视频入门基础:FLV专题(4)——使用flvAnalyser工具分析FLV文件

一、引言 有很多工具可以分析FLV格式&#xff0c;这里推荐flvAnalyser。其支持&#xff1a; 1.FLV 文件分析&#xff08;Tag 列表、时间戳、码率、音视频同步等&#xff09;&#xff0c;HEVC(12)/AV1(13) or Enhanced RTMP v1 with fourCC(hvc1/av01)&#xff1b; 2.RTMP/HTT…...

Java服务端开发中的网络安全:防护DDoS与数据泄露的策略

Java服务端开发中的网络安全&#xff1a;防护DDoS与数据泄露的策略 大家好&#xff0c;我是微赚淘客返利系统3.0的小编&#xff0c;是个冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01;在Java服务端开发中&#xff0c;网络安全是我们必须重点关注的领域&#xff0c…...

CodeMeter 8.20AxProtector 11.50版本更新

CodeMeter是一款强大的软件保护和许可管理工具&#xff0c;此次8.20版本更新引入了多个重要的新功能和优化&#xff0c;进一步提升了不同平台上的兼容性与使用体验。本次更新扩展了对CmCloudContainer的支持&#xff0c;优化了Python、Rust等语言的加密能力&#xff0c;并修复了…...

C语言在嵌入式系统中的应用有哪些?

C语言在嵌入式系统中的应用非常广泛&#xff0c;这主要得益于其高效的运行速度、优秀的代码优化能力以及丰富的函数库。以下是C语言在嵌入式系统应用中的几个关键方面&#xff1a; 1. 硬件直接访问能力 底层硬件操作&#xff1a;C语言提供了直接访问底层硬件的机制&#xff0…...

Android 系统WIFI AP模式

在 Android 系统中&#xff0c;AP 模式&#xff08;Access Point Mode&#xff0c;热点模式&#xff09;允许设备作为 Wi-Fi 热点&#xff0c;其他设备可以通过连接这个热点进行互联网访问或局域网通信。要让 Android 设备工作在 AP 模式&#xff0c;你可以通过应用层的 API 控…...

java jdk8内存序列化为xml

在Java JDK 8中&#xff0c;将对象内存序列化为XML格式&#xff0c;可以使用JAXB&#xff08;Java Architecture for XML Binding&#xff09;&#xff0c;它是JDK 8的一部分&#xff0c;并且被广泛用于Java对象与XML之间的转换。以下是一个使用JAXB在JDK 8中将Java对象序列化为…...

脚本注入网页:XSS

跨站脚本攻击&#xff08;Cross-Site Scripting&#xff0c;简称 XSS&#xff09;是一种常见的网络安全漏洞。它是指攻击者在网页中注入恶意脚本代码&#xff0c;当用户访问该网页时&#xff0c;恶意脚本会在用户的浏览器中执行&#xff0c;从而导致一系列安全问题。这些问题可…...

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

&#x1f9e0; 智能合约中的数据是如何在区块链中保持一致的&#xff1f; 为什么所有区块链节点都能得出相同结果&#xff1f;合约调用这么复杂&#xff0c;状态真能保持一致吗&#xff1f;本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具

作者&#xff1a;来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗&#xff1f;了解下一期 Elasticsearch Engineer 培训的时间吧&#xff01; Elasticsearch 拥有众多新功能&#xff0c;助你为自己…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库&#xff0c;获取股票数据&#xff0c;并生成TabPFN这个模型 可以识别、处理的格式&#xff0c;写一个完整的预处理示例&#xff0c;并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务&#xff0c;进行预测并输…...

【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)

可以使用Sqliteviz这个网站免费编写sql语句&#xff0c;它能够让用户直接在浏览器内练习SQL的语法&#xff0c;不需要安装任何软件。 链接如下&#xff1a; sqliteviz 注意&#xff1a; 在转写SQL语法时&#xff0c;关键字之间有一个特定的顺序&#xff0c;这个顺序会影响到…...

Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器

第一章 引言&#xff1a;语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域&#xff0c;文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量&#xff0c;支撑着搜索引擎、推荐系统、…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

Linux云原生安全:零信任架构与机密计算

Linux云原生安全&#xff1a;零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言&#xff1a;云原生安全的范式革命 随着云原生技术的普及&#xff0c;安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测&#xff0c;到2025年&#xff0c;零信任架构将成为超…...