鸿蒙项目云捐助第十七讲云捐助我的页面上半部分的实现

鸿蒙项目云捐助第十七讲云捐助我的页面上半部分的实现

在一般的应用app中都会有一个“我的”页面,在“我的”页面中可以完成某些设置,也可以完成某些附加功能,如“修改密码”等相关功能。这里的鸿蒙云捐助也有一个“我的”功能页面。这里对“我的”功能页面进行布局设置。

这里的“我的”页面分为上下两部分。

一、“我的”页面大致规划

这里参考公益类捐助的上半部分,如下图所示。

一般在我的页面的下半部分会展示某些功能。这里大多采用豆腐块布局。如下图所示。

在“我的”页面的最上面还可以加入用户名的显示,如下图所示。

这里由于是捐助项目,可以在用户名的下面设置绑定的一张银行卡或者爱心卡。如下图所示。

通过分析大致的布局分为四部分,这里分别介绍。

一、登录用户显示部分

这里效仿的模板如下图所示。

完成“我的”组件需要在项目中component的文件夹下建立Mine.ets文件,如下图所示。

这里先期进行布局时保证Mine我的组件进行可视化,这里使用@Entry来修饰组件,同时还需要@Component对组件进行声明,鸿蒙组件的架构如下图所示。

这里使用export default导出组件,保证组件在后面被其他父组件调用。

由于“我的”组件有4个元素都是上下级排列,这里使用弹性盒子Flex,并使用属性direction方向指定为FlexDirection.Column指明方向是竖向排列。代码如下图所示。

紧接着在这个竖向的弹性盒子中布局用户显示的第一个部分,代码如下。

代码使用弹性盒子Flex定义第一个部分,这里的弹性盒子使用direction方向设置为FlexDirection.Column进行竖向布局,使用justifyContent水平设置为FlexAlign.Center进行居中,使用alignItems竖直方向为FlexAlign.Center进行居中。最关键的是主个整体用户显示部分的弹性盒子使用渐变色指令linearGradient的线性渐变,这里从0xff0000的红色渐变到0xee9900的粉色,并且透明度从0.0渐变到1.0。

在弹性盒子中第一个元素显示的是头像,把头像放在Flex弹性盒子中,头像使用borderRadius定义圆角,width宽和height高各为100,头像外面的Flex弹性盒子使用backgroundColor设置背景色为Color.White的白色,width宽和height高和头像的width宽和高一致都为100,头像Image组件外面的弹性盒子也做了borderRadius的圆角处理。

在Flex包含头像弹性盒子的下面是Text文字组件,Text文字组件显示“注册用户名:田边人”的信息,这个信息使用fontSize字体大小为25,指定信息的fontColor字体颜色为Color.White白色。Text文字组件的外边距margin设定为bottom下边距为10。

第一部分的最下面也是Text文字组件,显示“一般用户”,也有可能显示“管理员”,这在程序后面进行控制。这里设置“一般用户”的Text文本组件的背景色backgroundColor为Color.White的白色背景,高度width设为100,height高度设为30,“一般用户”的Text文本组件也设置成了圆角状态。

这样就完成了第一部分用户信息部分的展示,最终效果如下图所示。

在“我的”页面的第二个部分,这里布局一个银行卡。

二、“我的”页面银行卡的布局

这里布局银行卡参照的模板如下图所示。

完成布局需要准备的是银联的图片,龙形背景,银行卡磁芯,还有中国建设银行的标志。如下图所示的素材准备。

通过素材的拼接,最终银行卡的布局代码如下图所示。

代码首先把整个银行卡当成一个弹性盒子Flex,这里设置其direction的方向为FlexDirection.Column的竖向排列,这个整体银行卡的弹出盒子具备backgroundImage的背景图片,这里使用$r("app.media.card_bk")龙型图案做为背景图片,然后设置backgroundImageSize背景图片的尺寸是ImageSize.Cover覆盖,在边框上进行borderRadius的圆角处理,设置其宽度width为90%,高度为200,这样银行卡的底纹外框就准备好了。

在银行卡的底纹外框中首先有一个弹性盒子Flex,其方向direction定义为FlexDirection.Row横向排列,这里设置的是建行图标和建行文字的横向排列,左侧是Image图片组件,这个Image图片组件使用建行的图标,定义宽width和高height,右边是建行中文和项文竖向排列的弹性盒子Flex,这个Flex定义方向是FlexDiretion.Column进行竖向排列,其中里面包括中文Text文字组件的“中国建设银行”和英文Text文字组件“China Construction Bank”。

在银行卡的底纹外框第二部分是银行卡的磁芯,这时就是一个图片,设置其width宽度和height高度,并设置left的外边距。

在银行卡的底纹外框第三部分是银行卡的卡号,这里直接使用Text文本组件,将卡号做为文本组件的内容,设置fontSize的文字大小为25。

在银行卡的底纹外框最后一部分是显示银联的标志,这个标志需要放在右边,这里通过弹性盒子Flex设置direction方向为FlexDirection.Row的横向,再通过justifyContent水平居中设置为FlexAlign.SpaceBetween的两端对齐,在弹性盒子使用两个元素,空文本Text组件和Image图片组件,由于两端对齐,空文本Text组件在左,Image图片组件在右,Image图片组件设置宽度width为60和高度height为30。

设置好银行卡布局显示效果如下图所示。

这样就实现的云捐助“我的”页面的上半部分,后续会带来云捐助“我的”页面的下半部分布局,欢迎关注。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络安全(3)_安全套接字层SSL

4. 安全套接字层 4.1 安全套接字层(SSL)和传输层安全(TLS) (1)SSL/TLS提供的安全服务 ①SSL服务器鉴别,允许用户证实服务器的身份。支持SSL的客户端通过验证来自服务器的证书,来鉴别…

【ArcGIS Pro】水文水资源、水生态与水环境

ArcGIS Pro 是一款集数据采集、处理、分析和可视化于一体的强大 GIS 工具,广泛应用于水文、水资源、水生态和水环境等领域。其全面的功能使得研究人员能够高效地处理各种水文和环境数据,从而为科学研究和决策支持提供强有力的技术保障。在水文分析方面&a…

【前端系列】Element-UI 悟道

???欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老…

中软高科身份证云解码金融(银行)解决方案介绍

多年来,中软高科一直深耕身份证云解码领域,对身份证云解码应用于金融(银行),进行了大量且深入的研究。从长期调研来看,金融(银行)的痛点需求主要有: 传统身份证解码设备…

【LeetCode】每日一题 2024_12_19 找到稳定山的下标(模拟)

前言 每天和你一起刷 LeetCode 每日一题~ 最近力扣的每日一题出的比较烂,难度过山车,导致近期的更新都三天打鱼,两天断更了 . . . LeetCode 启动! 题目:找到稳定山的下标 代码与解题思路 先读题:最重要…

SpringBoot开发——详解Tomcat线程池默认最大支持200并发

文章目录 1、SpringBoot 应用可以同时并发处理多少请求2、Tomcat线程池3、底层源码3.1 runWorker3.2 workQueue.offer 4、总结 1、SpringBoot 应用可以同时并发处理多少请求 Q:经典面试题,SpringBoot 应用可以同时并发处理多少请求? A&#…

Linux限制root 用户的远程登录(安全要求)

前言:现在基本用户主机都不允许使用root来操作,所以本文通过创建新用户,并限制root用户的ssh来解决这个问题 1. 创建新账户 aingo 首先,使用 root 账户登录系统。 sudo useradd aingo设置 aingo 账户密码: sudo pa…

计算机网络之王道考研读书笔记-2

第 2 章 物理层 2.1 通信基础 2.1.1 基本概念 1.数据、信号与码元 通信的目的是传输信息。数据是指传送信息的实体。信号则是数据的电气或电磁表现,是数据在传输过程中的存在形式。码元是数字通信中数字信号的计量单位,这个时长内的信号称为 k 进制码…

谁说C比C++快?

看到这个问题,我我得说:这事儿没有那么简单。 1. 先把最大的误区打破 "C永远比C快" —— 某位1990年代的程序员 这种说法就像"自行车永远比汽车省油"一样荒谬。我们来看个例子: // C风格 char* str (char*)malloc(100…

【Unity3D】无限循环列表(扩展版)

基础版:【Unity技术分享】UGUI之ScrollRect优化_ugui scrollrect 优化-CSDN博客 using UnityEngine; using UnityEngine.UI; using System.Collections.Generic;public delegate void OnBaseLoopListItemCallback(GameObject cell, int index); public class BaseLo…

Hive SQL 查询所有函数

-- 显示所有的函数 show functions; -- 对函数year进行解释 desc function year; -- 对函数year进行详细解释,并举例说明 desc function extended year;– 对函数year进行解释 desc function year; – 对函数year进行详细解释,并举例说明 desc functio…

Android13 系统签名应用编译调试说明

Android13 系统签名应用编译调试说明 文章目录 Android13 系统签名应用编译调试说明一、前言二、系统签名应用调试步骤1、新建一个应用,确保可以正常编译出APK2、获取系统签名文件3、Android Studio 编译安装系统权限应用(1)导入签名文件生成…

基于Spring Boot的医院质控上报系统

一、系统背景与意义 医院质控上报系统旨在通过信息化手段,实现医院质量控制的标准化、流程化和自动化管理。该系统能够帮助医院实时监控医疗质量数据,及时发现和处理潜在的质量问题,从而确保医疗服务的安全性和有效性。同时,系统…

将java项目部署到linux

命令解析 Dockerfile: Dockerfile 是一个文本文件,包含了所有必要的指令来组装(build)一个 Docker 镜像。 docker build: 根据 Dockerfile 或标准指令来构建一个新的镜像。 docker save: 将本地镜像保存为一个 tar 文件。 docker load: 从…

LeetCode:226.翻转二叉树

跟着carl学算法,本系列博客仅做个人记录,建议大家都去看carl本人的博客,写的真的很好的! 代码随想录 LeetCode:226.翻转二叉树 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 …

Webpack学习笔记(2)

1.什么是loader? 上图是Webpack打包简易流程,webpack本身只能理解js和json这样的文件,loader可以让webpack解析其他类型文件,并且将文件转换成模块供我们使用。 test识别出那些文件被转换,use定义转换时使用哪个loader转换 上图…

【WebDriver】浏览器驱动下载及其配置

一、Windows电脑环境搭建-Chrome浏览器 行业内,Chrome (谷歌) 浏览器对于自动化程序来讲是比较稳定的. 自动化程序推荐使用 Chrome 浏览器的原因有几个: 开发者工具:Chrome 提供强大的开发者工具,方便调试和测试自动化脚本。 稳…

list使用

目录 list介绍 list使用 list创建 list迭代器 容量操作 元素访问 修改元素 其他操作 list介绍 ● list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代 ● list的底层是双向链表结构,双向链表中每个元素存…

【AIGC】如何高效使用ChatGPT挖掘AI最大潜能?26个Prompt提问秘诀帮你提升300%效率的!

还记得第一次使用ChatGPT时,那种既兴奋又困惑的心情吗?我是从一个对AI一知半解的普通用户,逐步成长为现在的“ChatGPT大神”。这一过程并非一蹴而就,而是通过不断的探索和实践,掌握了一系列高效使用的技巧。今天&#…

windows 使用python共享网络给另外一个网卡

# -*- coding: utf-8 -*- import subprocessdef open_share(to_shared_adapter, from_shared_adapter):"""打开以太网的网络共享:return: None"""powershell_script f"""# Register the HNetCfg library (once)# regsvr32 hnetc…