【鸿蒙优选三方库】@ohos/pulltorefresh:一行给鸿蒙列表加上下拉刷新与上拉加载
【鸿蒙优选三方库】ohos/pulltorefresh一行给鸿蒙列表加上下拉刷新与上拉加载给 List / Scroll / Tabs / Grid / WaterFlow 一行加上下拉刷新 上拉加载ohos/pulltorefresh基于 OpenHarmony ArkUI 打造开箱即用、支持自定义动画、完美适配LazyForEach数据源——做列表类应用的必备利器。包名ohos/pulltorefresh当前版本v2.1.4-rc.0协议Apache License 2.0安装ohpm install ohos/pulltorefresh仓库https://gitcode.com/CPF-ApplicationTPC/ohos_pull_to_refresh一、它解决了什么问题鸿蒙应用做列表离不开两个高频交互下拉刷新上拉加载更多。但 ArkUI 原生的List/Scroll组件本身不带这套交互能力开发者要么自己监听手势 写动画重复造轮子找三方方案却发现兼容性差不支持LazyForEach、不支持某些容器组件上拉/下拉体验不一致、与系统风格割裂。ohos/pulltorefresh提供即插即用的 PullToRefresh / PullToRefreshV2 组件5 大系统容器全覆盖List / Scroll / Tabs / Grid / WaterFlow自定义动画支持替换内置动画、接自定义 Refresh 视图完美适配LazyForEach数据源。二、核心特点特性说明双版本组件PullToRefreshComponentPullToRefreshV2ComponentV25 大容器支持List / Scroll / Tabs / Grid / WaterFlow自定义动画替换内置 Refresh / LoadMore 动画或完全自定义视图LazyForEach 兼容完美适配懒加载数据源Promise 回调onRefresh/onLoadMore返回 Promise结束时机可控零权限纯 UI 组件无需任何权限三、适用场景新闻/资讯/Feed 流下拉刷新最新内容上拉加载历史。电商商品列表下拉刷新推荐上拉加载更多商品。聊天/消息列表下拉刷新新消息。订单/物流列表下拉刷新订单状态。视频/图片瀑布流WaterFlow 上拉加载。多 Tab 切换Tabs 每个 Tab 独立的下拉刷新与加载。任何需要分页加载的长列表场景。四、快速上手1. 安装ohpminstallohos/pulltorefresh2. PullToRefreshComponent 写法import{PullToRefresh}fromohos/pulltorefreshEntryComponentstruct RefreshList{privatescroller:ScrollernewScroller()Statedata:string[][Item 1,Item 2,Item 3]build(){PullToRefresh({// 必传列表数据data:$data,// 必传列表容器scroller:this.scroller,// 必传自定义主体布局customList:(){this.getListView()},// 可选下拉刷新回调onRefresh:(){returnnewPromisestring((resolve){setTimeout((){this.data[New 1,New 2,New 3]resolve(刷新成功)},2000)})},// 可选上拉加载更多回调onLoadMore:(){returnnewPromisestring((resolve){setTimeout((){this.data.push(新增条目${this.data.length})resolve()},2000)})}})}BuildergetListView(){List({scroller:this.scroller}){ForEach(this.data,(item:string){ListItem(){Text(item).height(60).padding(12)}},(item:string)item)}.edgeEffect(EdgeEffect.None)// ⚠️ 必需设置}}3. PullToRefreshV2ComponentV2 写法import{PullToRefreshV2}fromohos/pulltorefreshEntryComponentV2struct V2Demo{privatescroller:ScrollernewScroller()Localdata:string[][]build(){PullToRefreshV2({data:this.data,scroller:this.scroller,customList:(){this.listView()},onRefresh:(){/* ... */},onLoadMore:(){/* ... */}})}BuilderlistView(){List({scroller:this.scroller}){ForEach(this.data,(item:string){ListItem(){Text(item).height(60)}},(item:string)item)}.edgeEffect(EdgeEffect.None)}}4. 自定义动画PullToRefresh({// ...customLoad:null,// 用 null 使用内置或传自定义组件customRefresh:null,// 同上})// 完全自定义传入自定义 Builder 替换内置动画PullToRefresh({customRefresh:(){this.myCustomRefreshView()},customLoad:(){this.myCustomLoadView()}})五、亮点能力速览双版本组件兼容Component旧写法与ComponentV2新写法按项目风格选用。5 大容器支持List / Scroll / Tabs / Grid / WaterFlow 全覆盖。LazyForEach 友好完美适配懒加载数据源长列表性能不打折。Promise 回调onRefresh/onLoadMore返回 Promise组件内部根据 Promise resolve 状态收/放动画。可定制动画内置精美动画也允许完全自定义。零权限纯 UI 组件无任何系统权限要求。六、使用限制必读✅ 支持List / Scroll / Tabs / Grid / WaterFlow⚠️必须设置容器edgeEffect(EdgeEffect.None)暂不支持系统弹簧/阴影❌ 暂不支持页面触底自动触发上拉❌ 暂不支持不满一屏时触发上拉❌ 暂不支持代码方式触发下拉刷新❌ 暂不提供手势结束回调七、为什么值得选它覆盖面广5 大容器一次搞定Tabs 多 Tab 列表也能轻松应对。双版本组件新老 ArkUI 写法都支持。LazyForEach 友好长列表性能不受影响。动画可定制内置够用也可以完全自定义。零依赖零权限装上即用无系统负担。如果你的应用里有任何滚动 分页的列表场景ohos/pulltorefresh是那个让你 5 分钟搞定刷新的利器。

相关新闻

艺术涂料包工包料多少钱一平?2026山西本地避坑指南

艺术涂料包工包料多少钱一平?2026山西本地避坑指南

2026年山西艺术涂料包工包料市场价为60-888元一平方,价格差距完全取决于材料、施工工艺和售后保障。我深耕艺术涂料行业十年,常年服务山西太原、晋中、吕梁、临汾、大同、朔州、忻州、阳泉、长治、晋城、运城全省各地装修业主,深知本地市场报…

2026/9/26 20:01:38 阅读更多 →
74HC系列芯片超详细入门笔记

74HC系列芯片超详细入门笔记

一、74系列芯片是什么? 1.1 先看名字:74 两个字是什么意思? 我们平时看到的芯片名字,比如 74HC138,开头的 74 其实就是一个系列的名字,就像"iPhone"是苹果手机系列的名字一样。 这个系列是由 德州仪器(Texas Instruments) 在上世纪60年代推出的,因为所有芯…

2026/9/29 10:14:59 阅读更多 →
空号检测三网直连信令实时查询:99.99%准确率如何精准剔除停机、关机、空号三类无效号码

空号检测三网直连信令实时查询:99.99%准确率如何精准剔除停机、关机、空号三类无效号码

空号检测为何成为企业通讯降本的核心抓手 2026年,企业私域运营与短信群发风控需求持续攀升,存量号码池质量走低已成为横亘在无数运营团队面前的现实难题。企讯通空号检测作为国内较早深耕号码核验领域的专业方案,凭借三网直连通道与批量实时…

2026/9/24 14:31:33 阅读更多 →

最新新闻

CS50第六课Scratch编程思维进阶:变量、自定义积木与列表实战指南

CS50第六课Scratch编程思维进阶:变量、自定义积木与列表实战指南

说实话,CS50这门课我前后跟了不下三轮,每一年第0讲和配套的Scratch练习都会重新看一遍。很多人一看Scratch就默认它是“给小朋友玩的积木工具”,直接跳过,但我个人强烈建议:如果想把计算机思维彻底打通,Scr…

2026/9/30 8:49:14 阅读更多 →
LLM Agent记忆系统实战:分层架构、MCP集成与Docker部署

LLM Agent记忆系统实战:分层架构、MCP集成与Docker部署

1. 从“hindsight”这个词说起:为什么记忆是Agent最被低估的能力 第一次看到“hindsight”这个标题,我脑子里蹦出来的不是技术,而是一句老话——事后诸葛亮。但恰恰是这个略带调侃的词,点中了当前LLM Agent领域最要命的一个短板&a…

2026/9/30 8:49:14 阅读更多 →
HTRI二次开发教程(09):结果取数——从对象模型与报表导出到 DataFrame

HTRI二次开发教程(09):结果取数——从对象模型与报表导出到 DataFrame

HTRI二次开发教程(09):结果取数——从对象模型与报表导出到 DataFrame版本与事实声明 版本锚点:当前 Xchanger Suite 9.4。9.4 在 Final Results Report 中新增"temperature effectiveness"(冷热两侧温度有效…

2026/9/30 8:49:14 阅读更多 →
HTRI二次开发教程(10):结构化落盘——案例矩阵、结果长表与断点账本

HTRI二次开发教程(10):结构化落盘——案例矩阵、结果长表与断点账本

HTRI二次开发教程(10):结构化落盘——案例矩阵、结果长表与断点账本版本与事实声明 版本锚点:当前 Xchanger Suite 9.4;落盘时必须记录所运行的软件版本(9.4 的方法更新会改变结果,如 9.3 改了 …

2026/9/30 8:49:14 阅读更多 →
HTRI二次开发教程(11):板式换热器自动化——Xphe 案例模型与模块间数据传递

HTRI二次开发教程(11):板式换热器自动化——Xphe 案例模型与模块间数据传递

HTRI二次开发教程(11):板式换热器自动化——Xphe 案例模型与模块间数据传递版本与事实声明 版本锚点:当前 Xchanger Suite 9.4;官方 Xchanger Suite Educational 版含 Xace/Xist/Xphe 三模块。官方 Xphe 描述&#xff…

2026/9/30 8:49:14 阅读更多 →
大语言模型推理优化实战:TensorRT与vLLM协同调优指南

大语言模型推理优化实战:TensorRT与vLLM协同调优指南

1. 项目概述:Model-Optimizer 不是工具名,而是一类工程实践的统称 “Model-Optimizer”这个标题乍看像某个开源库或商业软件的名字,但结合NVIDIA、TensorRT-LLM、vLLM、PT文件转换TensorRT等热搜词,它实际指向的是 大语言模型&a…

2026/9/30 8:48:14 阅读更多 →

日新闻

Base64 图片头部特征识别:从文件头到格式判断的完整指南

Base64 图片头部特征识别:从文件头到格式判断的完整指南

1. 项目概述:为什么说看懂 base64 图片头部是基本功这几年跟 base64 打交道的机会越来越多,后端接口返回图片、前端渲染验证码、小程序里存小图、还有一些老系统导出报表,动不动就给你一段长到怀疑人生的 base64 字符串。很多人拿到字符串就直…

2026/9/30 0:00:35 阅读更多 →
Java公交站牌广告管理系统:JSP+Servlet+MySQL实战落地指南

Java公交站牌广告管理系统:JSP+Servlet+MySQL实战落地指南

简介:本资源是一份面向Java初学者与课程设计学生的公交站牌广告灯箱管理系统毕业设计文档,聚焦城市公共广告资源信息化管理痛点,提供从需求分析到技术实现的完整方案。文档采用标准学术论文结构,含摘要、英文摘要、目录及五章正文…

2026/9/30 0:00:35 阅读更多 →
用 Redis Lua 构建大模型 API 多租户原子配额治理体系

用 Redis Lua 构建大模型 API 多租户原子配额治理体系

我去年年底接了一个内部 AI 平台的治理需求,背景很直接:公司把 DeepSeek、MiniMax 这类大模型 API 统一封装成内部网关,开放给几个业务团队用。结果第一个月账单出来,额度直接超了 4 倍。仔细查日志,发现原因并不复杂—…

2026/9/30 0:00:35 阅读更多 →

周新闻

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解 【免费下载链接】spirula-studio Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA. 项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio Sp…

2026/9/29 8:16:59 阅读更多 →
SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南 模板网站太丑不够用?别急着加滤镜,那是治标不治本。很多老板盯着后台流量掉得眼红,却还在纠结首页Banner的圆角是不是3像素。这就像穿着西装去挖土,姿势不对,努力白费。我整理这份 速查手册…

2026/9/29 16:41:41 阅读更多 →
FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏

FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏

FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏 【免费下载链接】FireRed-OpenStoryline FireRed-OpenStoryline is an AI video editing agent that transforms manual editing into intention-driven directing through natural language …

2026/9/29 8:24:48 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/29 19:29:29 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/29 5:58:00 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/29 3:55:56 阅读更多 →