HarmonyOS 动画与过渡效果:animateTo 与 transition
适用版本HarmonyOS 6.1API 12及以上验证环境Pura 90 Pro 模拟器HarmonyOS 6.1.1API 24关键概念animateTo、transition、Curve、.animation()、TransitionType前言ArkUI 的动画系统分两类属性动画改变组件属性时平滑过渡和组件过渡组件出现/消失时的动画。本文演示两种最常用的方式animateTo()和transition修饰符。一、animateTo — 属性动画animateTo在闭包内修改状态变量ArkUI 自动在新旧值之间插值渲染帧// 点击按钮时放大方块 Button(放大) .onClick(() { animateTo( { duration: 400, curve: Curve.EaseOut }, // 动画参数 () { this.boxWidth 140 // 这里的赋值会被动画化 this.boxHeight 140 } ) }) // 组件绑定 .animation() 也可以实现同效果更简洁 Text() .width(this.boxWidth) .height(this.boxHeight) .animation({ duration: 500, curve: Curve.EaseInOut })二、animateTo 参数详解animateTo( { duration: 400, // 持续时间毫秒 curve: Curve.EaseOut, // 缓动曲线 delay: 200, // 延迟开始毫秒 iterations: 1, // 重复次数-1 无限循环 playMode: PlayMode.Normal, // Normal | Reverse | Alternate onFinish: () { /* 动画结束回调 */ } }, () { // 在此闭包内修改 State 变量 this.boxColor #e74c3c } )三、常用缓动曲线曲线效果Curve.Linear匀速无缓动Curve.Ease先慢后慢中间快Curve.EaseIn由慢到快Curve.EaseOut由快到慢Curve.EaseInOut先慢后慢对称Curve.FastOutSlowInMaterial Design 标准曲线Curve.Smooth柔和过渡四、transition — 组件出现/消失过渡配合if条件渲染组件挂载/卸载时自动播放过渡动画State showCard: boolean false Button(显示/隐藏卡片) .onClick(() { animateTo({ duration: 350, curve: Curve.EaseInOut }, () { this.showCard !this.showCard }) }) if (this.showCard) { Column() { Text(过渡卡片内容) } .transition({ type: TransitionType.Insert, // 出现时 translate: { y: -20 }, // 从上方 20px 滑入 opacity: 0 // 从透明淡入 }) .transition({ type: TransitionType.Delete, // 消失时 translate: { y: -20 }, opacity: 0 }) }五、序列动画多个 animateTo 配合 delayplaySequence(): void { // 第1步向右移动 animateTo({ duration: 400, curve: Curve.EaseOut }, () { this.translateX 100 }) // 第2步400ms 后放大 半透明 animateTo({ duration: 300, delay: 400, curve: Curve.EaseInOut }, () { this.circleRadius 60 this.opacity 0.5 }) // 第3步700ms 后弹回 animateTo({ duration: 500, delay: 700, curve: Curve.EaseOut }, () { this.translateX -60 this.circleRadius 40 this.opacity 1.0 }) // 第4步1200ms 后归位 animateTo({ duration: 400, delay: 1200, curve: Curve.EaseIn }, () { this.translateX 0 }) }六、常用可动画属性属性说明width、height尺寸变化opacity透明度backgroundColor背景色渐变rotate({ angle })旋转scale({ x, y })缩放offset({ x, y })位移相对原位置borderRadius圆角变化模拟器运行截图初始状态animateTo 选项卡属性动画执行后点击「放大」按钮后方块以 EaseOut 曲线在 400ms 内平滑放大点击「旋转」后方块旋转 90°多次点击可叠加效果。常见问题QanimateTo和.animation()有什么区别AanimateTo命令式精确控制哪次变化要动画、用什么参数适合点击事件触发的动画.animation()声明式绑定在组件上该组件的所有属性变化都走这套动画配置简单但不能逐次区分Q如何实现无限循环动画如旋转 Loading 图标A设置iterations: -1和playMode: PlayMode.AlternateanimateTo({ duration: 1000, iterations: -1, playMode: PlayMode.Alternate }, () { this.rotate this.rotate 360 })Qtransition只支持出现和消失动画能做页面切换吗Atransition适合组件级别。页面级切换动画应使用Navigation组件的navDestination 路由过渡 API或配置router.pushUrl的转场效果。上一篇Provide/Consume 跨组件通信下一篇HTTP 网络请求

相关新闻

深圳地铁车辆编码解析:从02A2406株262车看运营技术体系

深圳地铁车辆编码解析:从02A2406株262车看运营技术体系

最近在深圳乘坐地铁2号线时,你是否遇到过这样的情况:列车从黄贝岭站出发后,车厢显示屏突然出现"02A2406株262车"这样的神秘代码?不少乘客看到这一串数字字母组合都会感到困惑——这到底是车辆故障提示、线路调度信息&am…

2026/10/26 4:25:52 阅读更多 →
OpenClaw大模型开发框架解析与实战指南

OpenClaw大模型开发框架解析与实战指南

1. OpenClaw大模型技术解析OpenClaw作为当前最受关注的大模型智能体开发框架,其核心价值在于实现了多智能体系统的模块化封装和任务自动化编排。这个由ClawTeam团队开发的平台本质上是一个基于Transformer架构的分布式任务处理系统,通过创新的Agent Swar…

2026/10/31 0:03:01 阅读更多 →
YOLO26实战指南:环境配置到工业部署全流程

YOLO26实战指南:环境配置到工业部署全流程

1. 项目概述:YOLO26与计算机视觉新纪元作为计算机视觉领域最具影响力的实时目标检测框架,YOLO系列在2024年迎来重大升级——Ultralytics推出的YOLO26不仅延续了前代产品的速度优势,更通过端到端无NMS推理架构重新定义了边缘计算场景下的性能标…

2026/10/30 2:19:20 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/2 0:25:10 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/1 10:36:53 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/1 10:36:51 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/2 1:16:51 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/1 10:35:11 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/1 9:35:41 阅读更多 →

日新闻

周新闻

月新闻