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

HarmonyOS NEXT仓颉开发语言实战案例:电影App

大家周末好,今天依然为大家分享之前使用ArkTS实现过的案例,一个电影App,今天使用仓颉的UI再次实现,看看仓颉和ArkTs有哪些相同和不同之处。

这个页面的结构比较简单,因为没有导航栏,全都使用List容器实现,最顶部是一个巨大的图片,这个不再演示,继续看下面的部分。

接下来两个部分都有标题了,所以使用ListItemGroup的header来实现,这部分知识点我们最近频繁用到:

@Builder func itemHead(text:String) {Row{Text(text).fontColor(Color.WHITE).fontSize(13)}.width(100.percent).height(35).alignItems(VerticalAlign.Center).padding(top:3,left:10)
}
ListItemGroup(ListItemGroupParams(header:{=>bind(this.itemHead,this)(‘分类’)})){
}

接下来是分类列表的内容部分,我们首先要定义一个数组,仓颉的数组写法和ArkTS略有不同:

@State var types:ArrayList<String> = ArrayList<String>(['全部的','动作','喜剧片','爱情','乡村','都市','战争'])

然后在页面中循环添加分类组件,仓颉的Foreach写法也是和ArkTS不同的:

Scroll{Row{ForEach(types, itemGeneratorFunc: {str:String,index:Int64 =>if(index == currentType){Text(str).fontSize(15).fontColor(Color.WHITE).padding(top:8,bottom:8,left:22,right:22).borderRadius(15).backgroundColor(0x6152FF)}else {Text(str).fontSize(15).fontColor(Color.WHITE).padding(top:8,bottom:8,left:22,right:22).borderRadius(15).backgroundColor(Color(6, 4, 31, alpha: 1.0))}})}
}

最底部分电影列表和上面类似,直接贴代码:

ListItemGroup(ListItemGroupParams(header:{=>bind(this.itemHead,this)('最受欢迎')})){ListItem{Scroll{Row(10){ForEach(ArrayList<String>(['1','1','2']), itemGeneratorFunc: {str:String,index:Int64 =>Image(@r(app.media.fm)).width(124).height(180).borderRadius(10).objectFit(ImageFit.Fill)})}}}
}

以上就是今天的内容分享,感谢阅读。##HarmonyOS语言##仓颉##休闲娱乐#

http://www.lqws.cn/news/576613.html

相关文章:

  • CAU数据挖掘 支持向量机
  • 基于 SpringBoot+Vue.js 诗词鉴赏论坛交流平台设计与实现7000字论文实现
  • android APP 小米商店上架失败之《获取应用列表权限》
  • Flutter插件ios_pod
  • 地级市-固定资产投资数据(2000-2023年)-实证数据
  • 气候智能体:AI如何重构人类应对气候危机的决策体系?
  • LabVIEW荧光微管图像模拟
  • Swift 实现二叉树垂直遍历:LeetCode 314 完整解析与实战示例
  • Pytest自动化测试框架入门?
  • Nordic空中升级OTA[NRF52832蓝牙OTA]
  • 免费文件管理 智能转换GC-Prevue:PDF 转 Word 多种格式 一键完成
  • 重构老项目不再“踩雷”:飞算JavaAI的本地化智能合并实战
  • Java基础(六):数组全面解析
  • 一套非常完整的复古传奇源码测试
  • 【时时三省】vectorcast使用教程
  • ChatGPT、DeepSeek等大语言模型技术教程
  • 【零基础学AI】第14讲:支持向量机实战 - 文本分类系统
  • EA自动交易完全指南:从策略设计到实盘部署
  • C# 委托(Lambda表达式)
  • 【冷知识】Spring Boot 配置文件外置
  • windows下使用cmake编译mingw版本的bcg729
  • 跨时间潜运动迁移以实现操作中的多帧预测
  • 出现滑块验证码的主要原因是什么?
  • 前端开发面试题总结-原生小程序部分
  • [特殊字符] Python 实战 | 从 Excel 提取数据 → 生成美观 Word 收货记录表格(含合并单元格 + 总计功能)
  • 力扣面试150(7/150)
  • 【MySQL】JDBC编程
  • 什么是集装箱残损识别系统?它如何提升港口效率?
  • 【AI时代速通QT】第四节:Windows下Qt Creator调试指南
  • nifi1.28.1集群部署详细记录