大家周末好,本文分享一个小而美的旅行app首页,效果图如下:

很显然这个页面还是使用List容器,页面两侧有统一的边距,我们可以在List容器统一设置:

List(space:20){
}
.padding(left:14,right:14,top:62)
.width(100.percent)
.height(100.percent)
.backgroundColor(0xF6F9FF)

列表第一行个人信息部分比较简单,横向布局,对齐方式为两端对齐,具体代码如下:

Row{Column(4){Text('llona').fontSize(17).fontColor(0x42436A)Text('Summer time, let’s book a flight for vacation').fontColor(0x8D91A2).fontSize(14)}.constraintSize( maxWidth: 60.percent).alignItems(HorizontalAlign.Start)Image(@r(app.media.lx_icon)).width(55).height(55)
}
.width(100.percent)
.justifyContent(FlexAlign.SpaceBetween)

第二行相同的两端对齐,内容更加简单:

Row{Row{Image(@r(app.media.lx_cup)).height(21).width(21).margin(left:14)Text('1130 pts').fontColor(0X42436A).fontSize(15).margin(left:14)}.width(168).height(49).backgroundColor(Color.WHITE).alignItems(VerticalAlign.Center).borderRadius(4)Row{Image(@r(app.media.lx_wallet)).height(21).width(21).margin(left:14)Text('$ 4600').fontColor(0X42436A).fontSize(15).margin(left:14)}.width(168).height(49).backgroundColor(Color.WHITE).alignItems(VerticalAlign.Center).borderRadius(4)
}
.width(100.percent)
.justifyContent(FlexAlign.SpaceBetween)

功能列表部分有些难度,我们要在List容器中嵌套网格列表,也就是Grid,这是一个2行4列的网格,大家要注意Grid属性的设置和foreach的使用:

Grid {ForEach(lxList, itemGeneratorFunc: {item:LXItem,tag:Int64 =>GridItem{Column{Image(item.getImg()).width(52).height(52)Text(item.getTitle()).fontColor(0x6e6e6e).fontSize(15)}.height(80)}})
}
.width(100.percent)
.columnsTemplate('1fr 1fr 1fr 1fr')
.rowsTemplate('1fr 1fr')
.columnsGap(12)
.rowsGap(12)
.height(200)

最后一列是带有标题的,我们已经多次见过,对于这种三个元素的对齐方式有多种实现方法,今天就简单实用Row和Column实现:

ListItemGroup(ListItemGroupParams(header:{=>bind(this.itemHead,this)('Recommend')})){ListItem{Row(15){Image(@r(app.media.lx_f1)).width(142).height(185)Column{Image(@r(app.media.lx_f2)).width(100.percent).height(83)Image(@r(app.media.lx_f3)).width(100.percent).height(83)}.height(185).layoutWeight(1).justifyContent(FlexAlign.SpaceBetween)}.width(100.percent).height(185)}
}

旅行app的主要内容就是这些,感谢阅读。##HarmonyOS语言##仓颉##休闲娱乐#

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

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

相关文章

Python银行管理系统01升级(适合初学者)

目录 框架如下: 1. Account类 - 账户数据模型 2. Bank类 - 银行业务逻辑 3. BankApp类 - 图形用户界面 关键概念解析(适合初学者) 1. 面向对象编程(OOP)概念 2. Tkinter GUI编程基础 3. 数据持久化 4. 输入验证 学习建议 系统功能概览 完整代码: 在Python银行…

华为防火墙双向NAT实验

如图所示, 企业内网有一台Server2,通过在FW1上配置nat server,将Server2的www端口映射到了公网; 实验环境中,内网和外网都使用外网的server1提供的DNS服务,在DNS服务器上添加A记录,www.baidu.c…

前端路由的基石:深度剖析 Hash 与 History 模式的本质差异与实战抉择

在单页面应用(SPA)统治现代Web开发的今天,前端路由已成为构建流畅用户体验的核心技术。而hash和history作为两种主流实现方案,其设计理念和技术细节的差异直接影响着应用架构的选择。本文将深入解析二者的技术本质,通过…

微机系统 - 绪论

绪论: 一:微处理器,微型计算机和微型计算机系统: 分类: 按照系统结构和基本工作原理.计算机分为5大部分:运算器,控制器,存储器,输入设备,输出设备 按照体积,性能和价格分5类:巨型机,大型机,中型机,小型机,微型计算机(单板机,单片机) 微型计算机的特点:集成度高,体积小,重量轻…

基于Java+Springboot的宠物健康咨询系统

源码编号:S564 源码名称:基于Springboot的宠物健康咨询系统 用户类型:多角色,用户、顾问、管理员 数据库表数量:12 张表 主要技术:Java、Vue、ElementUl 、SpringBoot、Maven 运行环境:Win…

SpringBoot+MySQL宠物猫店管理系统

概述 基于SpringBootMySQL开发的宠物猫店管理系统完整源码。该系统功能完善,包含前后台完整功能模块,代码规范易于二次开发,是学习SpringBoot项目实战的优秀范例。 主要内容 前台功能展示 系统前台设计简洁实用,主要包含以下核…

UE5 - 制作《塞尔达传说》中林克的技能 - 16 - 遥控炸弹(一)

让我们继续《塞尔达传说》中林克技能的制作!!! 本章节的核心目标:素材导入与遥控炸弹的外观 先让我们看一下完成后的效果: 基本流程:素材准备->C类开发->蓝图配置->场景部署 1.素材准备&#xff1…

HTTP中常见的Content-Type

Content-Type,也称为互联网媒体类型或MIME类型,是HTTP协议中的一个头部字段,用于指定处理请求和响应中的媒体类型信息。它告诉服务器如何处理请求的数据,同时也指导客户端(通常是浏览器)如何解析响应的数据…

Android11 wifi开启源码分析

目录 一、APP层源码分析 1.1、寻找页面activity 1.2、寻找页面开关按钮布局 二,framework层代码分析 2.1 开启wifi入口 2.2 WiFiNative 三,HAL层代码分析 这段时间撸了WIFI开启流程源码,本着前人栽树后人乘凉的原则,有志于…

R语言使用nonrandom包进行倾向评分匹配

倾向评分匹配(Propensity Score Matching,简称PSM)是一种统计学方法,用于处理观察研究(Observational Study)的数据,在SCI文章中应用非常广泛。在观察研究中,由于种种原因&#xff0…

LeetCode Hot 100 找到字符串中所有字母异位词

给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 示例 1: 输入: s "cbaebabacd", p "abc" 输出: [0,6] 解释: 起始索引等于 0 的子串是 "cba", 它是 "a…

关于庐山派多视频层(layer)和bind_layer的应用

嘉立创分了适配层和OSD(我称它为图片层)顾名思义,一个是能显示视频流到LCD屏幕,一个是只能显示照片,也就是你可以对不同层进行操作而不影响其他层,解决的场景就是用于你画了一个正方形在照片上,…

多传感器标定简介

目录 标定内容及方法 雷达内参标定 IMU内参标定 编码器内参标定 相机内参标定 雷达和相机外参标定 多雷达外参标定 手眼标定 融合中标定 总结 连续时间 标定内容及方法 雷达内参标定 1) 目的 由于安装原因,线束之间的夹角和设计不一致,会导致…

day46/60

浙大疏锦行 DAY 46 通道注意力(SE注意力) 知识点回顾: 不同CNN层的特征图:不同通道的特征图什么是注意力:注意力家族,类似于动物园,都是不同的模块,好不好试了才知道。通道注意力:模型的定义和插…

提升创作效率:轻松调用固定素材与模板

日常工作和生活中,我们经常需要复制粘贴不同类型的数据,如文本、图片、文件等。使用剪切板管理工具可以快速访问之前复制的内容,而无需反复切换应用进行复制操作。 这款绿色便携版应用,无需安装,双击即开,…

【C++】组合模式

目录 一、模式核心概念与结构二、C 实现示例:文件系统三、组合模式的关键特性四、应用场景五、组合模式与其他设计模式的关系六、C 标准库中的组合模式应用七、优缺点分析八、实战案例:图形编辑器九、实现注意事项如果这篇文章对你有所帮助,渴…

C++包管理工具:conan2持续集成 (CI) 教程

1.持续集成 (CI) ​ 这是一个高级主题,需要具备 Conan 的基础知识。请先阅读并练习用户教程。本节面向设计和实施涉及 Conan 包的生产 CI 管道的 DevOps 和构建工程师。如果不是这种情况,您可以跳过本节。 持续集成 (CI) 对不同用户和组织有不同的含义…

免费SSL证书一键申请与自动续期

免费SSL证书申请与自动续期教程 本文介绍如何通过乐此加密(www.letsencrypt.top) 实现免费SSL证书一键配置和自动续期 一、准备工作 服务器要求 Linux 系统(推荐 Ubuntu/CentOS)已安装 curl 和 crontab拥有 sudo 权限的用户 域名验证 确保域…

【NLP】自然语言项目设计

目录 项目简介 要求 需要考虑的问题 硬件需求和环境配置 n卡驱动配置 以cuda11.8 版本为例 下载对应的cudnn(version11) 安装GPU版本的torch 安装gpu版本的TensorFlow 检查cuda安装情况 项目简介 训练一个模型,实现歌词仿写生成 任务类型:文本…

设计模式:观察者模式 (Observer) 案例详解

目录 一、引言:为什么需要观察者模式? 二、观察者模式的核心原理 1. 角色划分 2. 类图关系 三、经典案例解析 案例1:天气监测系统 案例2:股票价格监控系统 案例3:MVC架构中的模型-视图分离 案例4:J…