登录社区云,与社区用户共同成长
邀请您加入社区
前文一直在用"一次性灌入全部数据"的本地数据源。真实业务里,数据通常来自分页接口:先加载第一页,滑到底部再拉下一页。正确姿势是在数据源里维护"已加载区间",当要取超出已加载范围的项时,触发加载,回来后通知增量追加。这样内存里永远只有"已加载的那几页",而非全量。另一个进阶是瀑布流(masonry)。标准List是一维等宽流式,若要"高低错落的 Pinterest 风",需要用WaterFlow组件
摘要:本文详细介绍在鸿蒙原生应用中使用ArkTS实现List+multipleSelect多选列表的开发方法。文章从需求分析、技术栈概览、开发环境准备开始,重点讲解数据模型设计、状态管理机制和核心交互实现。通过待办事项管理案例,展示如何高效实现多选删除/批量操作功能,包括进入多选模式、全选/取消全选、实时统计选中数量等关键交互。示例采用Stage模型和响应式编程范式,使用List容器、ListIt
购物清单(Shopping List)是一款实用的日常购物管理工具。用户可以添加待购商品,通过点击复选框标记已购商品,并实时查看购买进度(已购/总数 和 进度条)。应用支持单个删除和批量清除已购商品,帮助用户高效管理购物流程。在 ArkTS 技术层面,购物清单是列表操作集大成者——它完整实现了增(添加商品)、改(勾选切换)、删(单删/批量清除)三种操作,并引入了Progress的Linear(线性
阅读清单(Reading List)是一款面向书籍爱好者的清单管理工具。用户可以添加想读的书籍(书名+作者),并通过点击状态标签在「想读 → 在读 → 已读」三个状态之间循环切换。同时支持按状态筛选查看和删除书籍。对于经常读书的人来说,管理阅读进度是一个常见需求。这款应用以极简的方式实现了书单的三态管理,是 ArkTS 中状态流转条件筛选和列表操作的经典案例。从技术层面,它展示了Text作为交互按
随机选择(Random Picker)是一款解决"选择困难症"的趣味工具应用,帮助用户在多个选项中随机做出决定。应用内置了12个预设选项(涵盖饮食、娱乐、学习等生活场景),用户也可以自由添加和删除自定义选项。点击"帮我选"按钮后,选项会以快速轮播动画的方式跳动,最终定格在选中的选项上。应用基于 HarmonyOS 的 ArkTS 语言和声明式 UI 框架构建,完美展示了 List 列表组件、set
本文深入探讨了HarmonyOS ArkUI框架中List组件的弹性回弹边缘效果实现。文章首先分析了移动端滚动体验的重要性,介绍了ArkUI的声明式UI体系和布局组件分类。然后重点剖析了List组件的架构设计,包括其核心特性、构造参数和ListItem设计。通过EdgeEffect枚举类型,详细讲解了弹性回弹效果的物理原理和渲染机制。最后提供了完整的实现指南,涵盖基础实现、API适配、常见问题解决
摘要 本文系统介绍了HarmonyOS NEXT中List组件的单选与多选实现方案。内容涵盖核心API解析、数据模型设计、完整实现步骤及优化技巧。重点分析了editMode、multiSelectable、selected等关键属性,对比了受控与非受控模式差异,并提供了单选/多选模式的完整代码示例。文章还包含综合实战案例,演示了通讯录选择场景的实现,最后总结了性能优化建议和开发避坑指南。通过本文,
本文基于HarmonyOS 6.1.1(API 24)介绍如何使用Tabs+List+Grid组合构建高性能电商首页。文章详细讲解了三大核心组件的使用方法:Tabs实现多页导航,List实现横向Banner轮播,Grid展示分类和商品网格。重点介绍了API 24新增特性如嵌套滚动支持、IDataSource接口优化等,并提供了电商首页的完整实现方案,包括布局架构、状态管理、懒加载优化等关键技术点。
Scroll + List + ForEach/LazyForEach 构成了鸿蒙长列表性能优化的核心方案。Scroll 作为通用滚动容器,适合内容可控的场景;List 结合虚拟列表机制,专门针对大量列表数据优化。ForEach 适用于中等数据量,LazyForEach 更适合大数据量场景,其 IDataSource 接口提供了灵活的数据管理能力。在实际开发中,配合 stickyHeader、di
鸿蒙ArkTS密码交接清单应用技术解析 本文详细剖析了一个基于鸿蒙ArkTS开发的密码交接清单应用,该应用面向行政与资产管理场景,支持账号交接项维护、状态管理和办公交互。文章从工程结构、数据模型、状态管理、业务方法、UI复用和页面布局六大维度进行解析: 数据模型:采用接口定义业务对象字段,确保数据结构明确 状态管理:通过@State管理列表、输入、筛选和反馈四种核心状态 业务方法:包含新增、筛选、
本文介绍了HarmonyOS NEXT中实现拖拽排序功能的核心技术方案。通过List+editMode+ForEach.onMove的组合,开发者可以高效实现流畅的列表项拖拽排序效果。文章包含以下要点: 拖拽排序的9大典型应用场景,如待办清单、收藏夹管理等 传统实现方式的痛点与新方案的优势对比 5分钟快速体验指南,提供完整可运行的示例代码 四大核心组件(List、editMode、editable
本文深入解析鸿蒙ArkUI中分组列表的开发实践,重点介绍了List+ListItemGroup+sticky三件套的核心用法。作为移动端高频交互形态,分组列表在通讯录、订单管理等场景中至关重要。文章详细梳理了API 24版本下List与ListItemGroup的全量接口,通过通讯录和电商订单两大实战案例,展示了LazyForEach懒加载、吸顶效果、多列布局等进阶功能,并总结了10大常见问题和8
本文系统介绍了HarmonyOS ArkUI中List组件的水平列表实现方案。主要内容包括: List组件概述:定义、特性及API演进历程 水平列表核心实现:通过listDirection属性配置主轴方向为Axis.Horizontal ListItem尺寸约束:必须显式设置宽度,高度默认撑满容器 布局要点:需设置明确容器高度,合理配置间距与对齐方式 典型应用场景:商品横向展示、图片画廊等需要水平
本文深入探讨了HarmonyOS中List组件的垂直列表布局实现。核心内容包括: 基础用法:介绍了List组件结构、ListItem定义、垂直方向设置及ForEach数据绑定方法,强调唯一标识对性能优化的重要性。 API 24特性:详细解析了新增属性,包括listDirection增强、divider分割线设置、edgeEffect边缘效果以及scroller滚动控制。 布局设计:提供了列表项的标
文章摘要 本文详细解析了鸿蒙ArkTS项目"Project Risk List"的实现过程。该应用是一个团队协作工具,用于管理项目风险清单,支持风险等级筛选、新增和处理功能。文章从业务场景定位出发,拆解了工程入口、数据接口设计、响应式状态管理、核心业务方法、Builder组件封装和页面布局实现。 重点内容包括: 基于ArkTS的类型化接口设计确保数据结构稳定 使用@State管理列表、输入、筛选和
本文介绍了基于鸿蒙ArkTS开发的报销清单应用Reimbursement List的实现细节。该应用聚焦企业事务管理场景,通过数据录入、状态展示、列表管理和状态流转等功能形成业务闭环。文章从工程结构入手,详细解析了数据接口设计、响应式状态管理、核心业务方法和Builder组件的实现方式。重点包括:1)使用interface定义稳定的数据结构;2)通过@State驱动页面更新;3)业务方法处理新增、
本文深入解析了鸿蒙 ArkUI 中一个交互式教学页面的设计架构与实现原理。该页面通过双状态变量(activeCase 和 listItems)驱动动态场景切换,构建了一个五段式垂直布局的教学沙盒。核心亮点包括: 状态驱动交互:通过枚举状态实现布局场景的动态切换,配合条件渲染与色彩语义化(红/绿)提供直观反馈 弹性布局设计:利用 layoutWeight(1) 实现演示视口的自适应占位,同时通过固定
本文以鸿蒙 ArkUI 待办面板为例,详细解析了交互式列表组件的正确实现方式。核心要点包括: 采用四层结构分工:List容器负责滚动,ForEach生成条目,ListItem提供语义,TodoCard处理展示 必须使用任务ID而非数组下标作为稳定key,避免数据变更时渲染错位 卡片应保持纯展示性,状态统一由父组件管理,事件通过完整链路回传 通过layoutWeight实现弹性布局,确保不同屏幕尺寸
鸿蒙ArkTS下拉刷新布局实现详解 本文介绍了基于HarmonyOS NEXT的ArkTS下拉刷新布局实现方案,主要包含以下内容: 核心组件概述:详细解析了Refresh、List和ForEach三大组件的特性、属性和事件,包括Refresh的刷新状态管理、List的高性能渲染机制和ForEach的数据迭代能力。 状态管理机制:讲解了@State装饰器的使用方法、双向绑定机制(通过$$运算符)以及
本文介绍了在HarmonyOS NEXT中使用ArkTS和ArkUI框架实现拖拽排序功能的技术方案。重点讲解了PanGesture手势组件的使用方法,包括基本配置、事件回调以及GestureEvent对象属性。通过示例代码展示了如何利用响应式状态管理实现元素拖拽效果,并详细说明了PanGestureOptions的配置项和PanDirection方向控制。文章为开发者提供了在ArkUI中实现流畅拖
本文介绍了基于鸿蒙HarmonyOS的登录页面开发实践,从ArkUI布局体系(Column和Row容器)到核心组件(TextInput输入框)的使用。通过详细的需求分析和代码示例,展示如何构建包含Logo、表单、功能区域和第三方登录的完整登录界面。文章重点讲解了垂直/水平布局、输入框属性配置以及交互设计要点,适合具备ArkTS基础的开发者参考使用。
摘要 本项目基于HarmonyOS ArkTS开发了一个短视频信息流应用,采用组件化设计实现了"视频+描述+评论"的经典布局。核心功能包括: 三层垂直布局:视频播放区采用Video组件实现自动播放,信息区展示标题、作者和互动按钮,评论区显示最新3条评论 组件化架构:拆分为VideoSection、InfoSection等可复用组件,通过数据驱动UI更新 数据模型:定义了VideoItem和Comm
本文介绍了基于鸿蒙HarmonyOS和ArkTS开发的音乐播放器项目。文章首先概述了HarmonyOS的分布式架构特性和ArkTS语言基础,重点讲解了音乐播放器的界面设计理念与实现方案。播放器采用经典的垂直布局结构,分为封面、信息、进度条、控制条和列表五个功能区域。技术实现方面详细解析了ArkUI的核心布局组件(Column、Row、Stack、List)、唱片效果的动画实现、播放控制交互以及状态
本文介绍了鸿蒙ArkTS中List+swipeAction实现侧滑菜单的核心技术方案。内容包括: 应用场景:侧滑菜单在移动应用中的常见使用场景及优势 核心组件:List和ListItem组件的基本接口、属性和布局原理 swipeAction详解:侧滑菜单的配置参数和使用方式 完整示例:联系人列表的侧滑删除功能实现 侧滑菜单通过隐藏次要操作节省屏幕空间,提供直观流畅的交互体验。鸿蒙ArkTS原生支持
本文介绍了如何利用ArkUI框架中的Column、List和Navigation三大核心组件实现"列表-详情"页面协作模式。通过数据驱动的方式,使用@State变量currentDetail控制页面切换,实现了高性能列表渲染和流畅的导航体验。项目采用虚拟滚动机制优化长列表性能,通过Navigation管理标题栏和页面跳转,Column负责整体布局组织。文章详细解析了组件协作原理、状态管理策略、布局
本文深入解析了HarmonyOS NEXT中基于ArkUI框架的「列表页→详情页」经典开发模式。通过Column、List、Navigation三大核心组件的协作,实现高性能、优雅的页面布局与导航管理。 核心要点: 组件分工 Column:构建垂直布局骨架,灵活控制各区域排列 List:虚拟滚动机制保障长列表性能(cachedCount优化) Navigation:管理页面导航、标题栏和返回按钮
本文深入解析了HarmonyOS NEXT中基于ArkUI框架的「列表-详情」页面协作模式,通过Column、List和Navigation三大核心组件的有机组合实现高效开发。文章从设计思想、技术实现到性能优化全方位剖析: 组件协作机制 Column负责垂直布局组织(标题/搜索/列表/底部) List实现虚拟滚动的高性能列表渲染 Navigation管理页面导航与切换动画 关键技术点 状态驱动:@
鸿蒙应用开发:列表组件全面解析与优化指南 核心摘要 本文深入探讨了鸿蒙应用开发中的列表组件使用与优化,主要包含以下要点: 基础列表渲染: 使用ForEach遍历数组生成列表项 强调key的重要性(唯一性、稳定性) 避免使用index作为key,应选择数据唯一ID 高性能列表实现: List组件相比Scroll+Column具有显著性能优势 支持虚拟化和组件复用机制 提供多种滚动效果(Spring/
摘要: 本文解析鸿蒙ArkTS轻量应用Travel Packing List的实现逻辑,聚焦数据建模、状态管理与交互闭环。项目通过interface定义行李条目模型,利用@State管理列表、输入框及开关状态,核心方法涵盖新增、切换、统计等业务动作,并通过@Builder复用UI组件(如统计卡片、列表行)。开发要点包括: 数据驱动:以接口约束数据结构,确保类型安全; 状态更新:通过重建数组触发响应
鸿蒙ArkTS List性能优化解析 摘要 本文深入剖析了鸿蒙ArkTS框架中List组件的性能优化机制,重点分析了复用与缓存原理。长列表性能瓶颈主要来自三个方面:过度创建UI组件、频繁垃圾回收(GC)以及布局重计算。ArkTS通过LazyForEach+cachedCount+组件复用池的三位一体方案,实现了框架级的自动优化。 核心优化思路包括: 按需渲染:LazyForEach只创建可视区及缓
本文深入解析了鸿蒙原生 ArkTS 中 List 组件的三大编辑模式实现方案。文章从环境准备开始,详细介绍了多选批量操作、单选方案确认和长按拖拽排序的核心实现逻辑。在多选模式中,重点讲解了 Set 数据结构的状态管理;单选模式强调了受控属性的数据驱动特性;拖拽排序则展示了手势交互与数据同步机制。全文通过清晰的代码示例和关键 API 说明,帮助开发者掌握 List 编辑模式的完整实现路径,特别针对
本文深入解析了鸿蒙ArkTS中List组件的两种数据绑定方式:ForEach和LazyForEach。ForEach适用于数据量较小(<500条)且静态的场景,采用全量渲染策略;LazyForEach则针对大数据量(≥500条)和动态数据场景,通过IDataSource接口实现按需加载和内存回收,显著提升性能。文章对比了两者在渲染策略、内存占用、数据更新机制等方面的差异,并提供了完整示例代码展示其
首先定义数据结构。实践中建议使用interface而非class,因为 ArkTS 对接口类型有更好的编译期优化。id: number;List 组件的基础用法和ListItem包裹规则事件的触发机制和防重复处理分页三剑客(currentPage / isLoading / hasMore)的状态设计四种底部状态(首次加载 / 追加加载 / 全部完成 / 空数据)的 UI 切换不可变数据更新在 A
鸿蒙ArkTS下拉刷新(PullToRefresh)实现详解 本文介绍了在鸿蒙NEXT(API 24)中使用ArkUI框架实现下拉刷新功能的核心方法。通过Refresh组件包裹List组件的方式,开发者可以轻松实现用户下拉获取最新数据的交互效果。文章包含完整示例代码,展示了如何定义数据结构、管理刷新状态、处理刷新回调以及构建UI界面。关键点包括:1)使用@State装饰器管理数据和刷新状态;2)在
本文介绍了在鸿蒙原生ArkTS中实现List下拉刷新功能的全过程。文章以一个"消息中心"通知列表为例,详细讲解了如何结合Refresh组件和List组件构建下拉刷新交互,并深入剖析了布局要点和ArkTS语法特性。 核心内容包括:项目准备与配置、Refresh和List组件解析、数据模型设计、状态管理、下拉刷新逻辑实现、列表项封装以及页面布局构建。关键技术点涉及@State响应式状态、@Builde
List是 ArkTS 提供的高性能列表容器懒加载:只渲染可视区域内的列表项,大量数据时依然流畅复用机制:离屏的 ListItem 会被回收复用,减少内存开销方向控制:支持垂直(默认)和水平两种滚动方向粘性标题:支持分组列表的粘性标题(sticky header)滑动操作:通过为每一项添加滑动面板List() {// 你的列表项内容在 ArkTS 中定义数据模型时,有一个重要的语法限制不能在构造函
本文介绍了鸿蒙原生ArkTS中List组件的空状态占位功能emptyState的实战应用。文章首先强调了空状态在移动应用中的重要性,包括三种常见形态(首次使用、清空/完成、无结果)和优秀设计的四项原则(引导性、情感化、可操作性、品牌一致性)。 然后详细讲解了HarmonyOS NEXT API 24引入的List.emptyState()原生API,与传统if/else方案相比具有代码量少、可维护
本文介绍了如何使用鸿蒙原生ArkTS实现一个联系人列表页面。主要内容包括: 技术背景 ArkTS是鸿蒙声明式UI开发语言,基于TypeScript扩展 采用声明式+状态驱动范式,通过装饰器管理组件和状态 实现功能 使用List组件构建可滚动列表 通过ForEach循环渲染联系人数据 自定义圆形头像(纯代码实现,无图片依赖) 布局采用Row+Column组合 添加列表分割线和回弹效果 关键代码 定义
文章摘要:鸿蒙原生 ArkTS 中 List 组件的 space 参数解析 本文深入探讨了 HarmonyOS NEXT 中 ArkTS 的 List 组件 spacing 控制机制。作为鸿蒙原生应用开发的核心组件,List 的 space 参数用于精确控制列表项间距:1) space 是构造参数而非链式方法,需通过 List({ space: value }) 方式设置;2) 间距单位为 vp,
本文介绍了鸿蒙原生ArkTS中List列表布局的核心概念与实现方法。List组件作为移动端高频使用的布局方式,通过虚拟滚动技术实现了高效渲染,相比传统Column+ForEach方案具有显著性能优势。文章从列表布局的重要性出发,分析了技术演进历程,详细讲解了List与LazyForEach的配合使用、IDataSource接口实现等关键技术点,并提供了完整项目架构和代码示例。通过对比测试数据,证明
/ 3×3 九宫格// 头尾固定 + 中间弹性(页面骨架)// 日历网格(表头固定 + 日期等分).columnsTemplate('1fr 1fr 1fr 1fr 1fr 1fr 1fr') // 7 列.rowsTemplate('40px 1fr 1fr 1fr 1fr 1fr') // 表头+5行@BuilderColumn() {Stack() {Text(`${Column() {St
本文介绍了鸿蒙原生ArkTS中List+LazyForEach懒加载布局的核心原理与实现。通过解析List容器组件、LazyForEach渲染控制和cachedCount缓存机制,阐述了如何高效处理大数据列表。文章对比了LazyForEach与ForEach的区别,提供了数据源接口实现、增量更新机制等关键代码示例,并给出cachedCount调优等性能优化建议。该方案能显著降低内存占用和渲染开销,
本文介绍了一个基于 HarmonyOS 5.0 和 ArkTS 开发的编程练习应用。该应用通过 Grid 组件实现语言选择标签,List 组件展示题目卡片,支持点击语言切换自动过滤题目列表。文章详细讲解了项目搭建、数据模型设计、Grid 组件实现语言标签(包括选中态样式和点击事件处理)、以及 List 组件实现题目列表(包括空状态处理)等核心开发过程。整个应用采用声明式 UI 和响应式状态管理,展
本文详细介绍了鸿蒙原生ArkTS中List+multipleSelect多选列表的布局实现方式。主要内容包括: 核心组件解析:List、ListItem、Checkbox等组件的关键属性与交互机制 数据模型设计:使用接口定义数据结构,通过@State管理响应式状态 布局实现:采用分层结构设计,包含顶部操作栏、统计信息行和列表主体 技术优势:利用Set管理选中状态,提高性能表现 该布局模式适用于消息
鸿蒙ArkTS分页加载指南:List + onReachStart/End实践 摘要 本文详细介绍了HarmonyOS NEXT中基于ArkUI的声明式分页加载实现方案。核心要点: 三大关键技术: List组件提供高性能滚动容器 onReachStart/End事件实现无感知分页触发 LazyForEach实现视图懒加载和节点复用 数据层设计: 自定义IDataSource实现类管理数据 提供pu
本文介绍如何使用ArkUI开发一个经典的数字华容道游戏。文章首先回顾了这款140年历史的滑块拼图游戏的规则和目标:在一个4×4的网格中,通过滑动数字块使它们按顺序排列。接着详细讲解了游戏的核心设计: 使用一维数组表示棋盘状态,0代表空格 实现保证可解的打乱算法,从目标状态逆向进行100次随机合法移动 计算相邻关系的算法,处理边界条件 滑动操作的实现,包括不可变数组更新和通关检测 通过颜色区分15个
每个呼吸模式由多个阶段(Phase)组成。// 阶段标签:"吸气" / "屏息" / "呼气"// 时长(秒)// 动画起始比例(0=最小圈, 1=最大圈)// 动画结束比例// 圆圈颜色(青/蓝/紫)startRatio和endRatio是动画引擎的核心参数。吸气→ 圈从小变大屏息→ 圈保持最大不变呼气→ 圈从大变回小屏息(呼后)→ 圈保持最小不变// 模式名称// 简短描述// 阶段列表4-7
**List**:仅渲染可视区域内的 `ListItem`(加上预缓存 `cachedCount` 项),滚动时动态回收和复用不可见的节点。`List`、`ListItem`、`Column`、`Row`、`Text` 等基础组件由框架隐式导入。注意:如果列表的 `edgeEffect` 设置为 `None`,下拉刷新时的"超出"行为需要由 `Refresh` 组件接管,List 自身不再产生回弹