HarmonyOS7 尺码单选列表:用 ForEach 做好尺码选择
📅 2026/7/21 8:25:55
👁️ 次浏览
文章目录前言这个写法的价值组件 API 对照关键代码说明完整代码写在最后前言这组案例开始进入选择类和调节类组件写业务页面时会经常遇到。这个案例围绕Radio 垂直列表展开重点不是把属性背下来而是弄清楚状态、组件和用户操作之间怎么连起来。这篇我会把重点放在列表选择上尽量说清楚它在真实页面里有什么用。这个写法的价值如果把它放到真实项目里常见位置可能是设置页、筛选页、编辑页或者某个需要快速操作的工具面板。用户点一下、选一下、拖一下页面就应该给出明确反馈。维度内容案例主题Radio 垂直列表核心 APIForEach使用场景尺码选择文章侧重点列表选择组件 API 对照代码结构可以按三层读外层负责页面背景和留白中间卡片承载主要内容内部组件处理具体交互。这样的层级不花哨但维护起来比较舒服。我比较推荐先把状态字段命名清楚。选中项、开关状态、滑块数值最好都能从名字看出用途比随手写flag、value后面省心很多。关键代码说明先看一段连续代码基本能判断这个案例的运行方式。它包含入口组件、状态字段以及一部分核心 UI。interfaceSizeItem{value:stringlabel:stringdesc:string}EntryComponentstruct VerticalSizeRadioList{StateisShow:booleantrueStateselectedSize:stringMbuild(){Column(){if(this.isShow){Column(){Text(Radio 垂直列表 - 选择尺码).fontSize(16).fontWeight(FontWeight.Bold).margin({bottom:12})这段代码可以拆成几块看State保存当前页面状态用户操作之后会触发 UI 更新。ForEach是案例的关键入口真正的行为通常由它和事件回调一起完成。布局属性服务于业务表达选中、禁用、拖动这些状态最好都能在视觉上看出来。完整代码下面是整理后的完整代码。组件名已经改成VerticalSizeRadioList共享颜色也内置到当前文件里单独复制出来读会更方便。constPAGE_BG_COLOR:string#F5F6FAconstCARD_BG_COLOR:string#FFFFFFconstSUBTEXT_COLOR:string#8A8A8AinterfaceSizeItem{value:stringlabel:stringdesc:string}EntryComponentstruct VerticalSizeRadioList{StateisShow:booleantrueStateselectedSize:stringMbuild(){Column(){if(this.isShow){Column(){Text(Radio 垂直列表 - 选择尺码).fontSize(16).fontWeight(FontWeight.Bold).margin({bottom:12})Column(){ForEach([{value:XS,label:XS 加小码,desc:胸围82-86},{value:S,label:S 小码,desc:胸围86-90},{value:M,label:M 中码,desc:胸围90-94},{value:L,label:L 大码,desc:胸围94-98},{value:XL,label:XL 加大码,desc:胸围98-102}],(item:SizeItem){Row(){Radio({value:item.value,group:sizeGroup}).checked(this.selectedSizeitem.value).onChange((c:boolean){if(c)this.selectedSizeitem.value})Column(){Text(item.label).fontSize(14).fontWeight(FontWeight.Medium)Text(item.desc).fontSize(11).fontColor(SUBTEXT_COLOR)}.alignItems(HorizontalAlign.Start).margin({left:8})}.width(100%).padding({top:10,bottom:10}).border({width:{bottom:0.5},color:#F0F0F0})})}}.width(100%).padding(16).backgroundColor(CARD_BG_COLOR).borderRadius(12)}Text(尺码单选列表Radio 垂直列表 - 列表式单选).fontSize(12).fontColor(SUBTEXT_COLOR).margin({top:12})}.width(100%).height(100%).backgroundColor(PAGE_BG_COLOR).padding(16)}}写在最后继续扩展的话我会把静态选项抽成接口返回的数据再补上空状态和异常状态。示例页面先把核心交互跑通就够了到了业务页面状态边界才是真正容易出问题的地方。
1. 树的基本概念与核心特性树(Tree)是计算机科学中最基础且应用最广泛的数据结构之一,它模拟了自然界中树的层次结构。与线性结构的数组和链表不同,树是一种非线性的、分层的数据结构,特别适合表示具有层级关系的数据。…
📅 2026/7/21 8:25:55
1. 项目背景与核心逻辑拆解 "帮老婆成为网红"这个看似简单的命题背后,实际上是一套完整的个人品牌打造体系。作为微博创始团队成员,我深知社交平台的内容分发机制和用户增长逻辑。过去三年里,我帮妻子从0开始运营账号,目…
📅 2026/7/21 8:25:55
摘要芯片封装是连接裸片与系统电路的物理桥梁,直接决定了器件的电气性能、散热能力、抗机械冲击与抗空间辐射能力。本文在商业航天与高可靠电子系统的背景下,系统梳理通孔插装、表面贴装、阵列封装、晶圆级封装、倒装芯片以及高可靠陶瓷气密封装等主流样…
📅 2026/7/21 8:25:55
从数据到决策:StockAnal_Sys数据源架构详解与AKShare集成指南 【免费下载链接】StockAnal_Sys 一个基于Python和Flask的Web应用,整合了多维度股票分析能力和人工智能辅助决策功能。系统通过AKShare获取股票数据,结合技术分析、基本面分析和资…
📅 2026/7/21 17:22:53
从Powercord到Replugged:为什么这款轻量级客户端Mod更值得选择? 【免费下载链接】replugged A lightweight Discord client mod focused on simplicity and performance. 项目地址: https://gitcode.com/gh_mirrors/re/replugged
在Discord客户端…
📅 2026/7/21 17:22:53
本文深入剖析2026年AI就业市场薪资分化现象,揭示金字塔式人才分层:塔尖AI科学家、大模型工程师年薪百万至200万,而底端数据训练师月薪不足一万。文章提供AI进阶三阶路线——入门课、大模型课、具身智能课,助零基础者循序渐进提升&…
📅 2026/7/21 17:22:53
1. 先搞清楚“逼近”到底指什么能力看到“中国开源模型逼近美国前沿”这个标题,很多人第一反应是“到底在哪些具体任务上能比?”。不是所有场景都需要最顶尖的模型,关键是要知道开源模型现在能做到什么程度,适合谁用。从实际落地角…
📅 2026/7/21 17:22:53
5分钟部署Chanvis:基于TradingView的缠论量化终极解决方案 【免费下载链接】chanvis 基于TradingView本地SDK的可视化前后端代码,适用于缠论量化研究,和其他的基于几何交易的量化研究。 缠论量化 摩尔缠论 缠论可视化 TradingView TV-SDK 项…
📅 2026/7/21 17:22:53
eDBG未来展望:eBPF调试技术在Android安全领域的10个创新应用场景 【免费下载链接】eDBG eBPF-based lightweight debugger for Android with MCP support 项目地址: https://gitcode.com/gh_mirrors/edb/eDBG
在Android安全领域,传统的调试技术常…
📅 2026/7/21 17:21:53
本文关键词:geo geo测试你是不是也遇到过这种奇葩事?明明你的网站内容写得比同行好,图片更清晰,甚至价格还更低,但在搜索结果里就是排不进去。特别是做本地生意的老板,那种看着隔壁老王明明啥也不是,却天天坐在收银台数钱的滋味,真的憋屈。我最近为了搞懂这个所谓的“地…
📅 2026/7/21 0:00:39
1. Octane Render与C4D的黄金组合:为什么选择这个方案?在三维创作领域,渲染器的选择往往决定了作品的最终呈现质量和工作效率。作为Cinema 4D(C4D)用户,Octane Render的GPU加速特性与实时预览功能ÿ…
📅 2026/7/21 0:00:41
1. GPMC接口设计:从硬件连接到软件配置的全局视角在嵌入式系统开发中,尤其是基于TI Sitara系列如AM263x这类高性能微控制器的项目里,外部存储器的扩展几乎是绕不开的一环。无论是存放大量非易失性代码的NOR Flash,还是作为高速数据…
📅 2026/7/21 0:00:41
1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…
📅 2026/7/21 1:04:03
1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…
📅 2026/7/21 1:04:03
更多请点击:
https://intelliparadigm.com
第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…
📅 2026/7/21 1:04:03
目录
第一步:选对模板,省心一半
第二步:打开扫码点餐功能
开启功能按钮
桌台管理与桌码生成
第三步:个性化设计,打造品牌感
调整点餐页面
设置点餐规则 你还在让顾客站着排队点餐吗?2025年ÿ…
📅 2026/7/21 7:04:23
在业务中快速构建一个能理解私有文档、准确回答专业问题的智能助手,是很多开发团队面临的共同挑战。传统方案往往需要从零开始搭建复杂的 RAG(检索增强生成)系统,涉及文档解析、向量化、检索、大模型调用等多个环节,整…
📅 2026/7/21 17:04:52
FAE放射组学分析工具:医学影像特征探索的完整解决方案 【免费下载链接】FAE FeAture Explorer 项目地址: https://gitcode.com/gh_mirrors/fae/FAE
你是否曾经面对海量医学影像数据感到无从下手?想要从CT、MRI等影像中提取有价值的定量特征&#…
📅 2026/7/21 5:04:16