SuperAPI AI Directory

harmonyos-motion-vocabulary

Coding & development

View repository

Updated 10-15 21:12

About this skill

HarmonyOS Motion Vocabulary

It does only one thing: convert vague visual or tactile descriptions into accurate terminology.

Applicable Boundaries

  • Strongly applicable: ArkUI interactive interfaces, Canvas/RenderNode product motion effects;
  • Partially applicable: non-interactive product videos whose timing, geometry, layout, and state are explicitly controlled by code;
  • Not applicable: traditional editing, cinematic narrative, live action, generative video black boxes.

Non-interactive videos can use terms such as rhythm, continuity, stagger, deformation, and curves, but do not apply interactive vocabulary such as press feedback, focus, and interruptible input. For third-party tools that lack verified official materials, do not make assumptions about their specific capabilities.

Output Format

**术语** — 一句话定义。

ArkUI Association:可能的 API 或能力 Boundary: when it is not this term.


有多个可能时,先给最佳匹配,再给 1–2 个近义概念。

## 词汇表

### 输入与反馈

- **按下反馈(Press feedback)** — 在 Touch Down 时立即改变控件状态,证明输入已被接收。
- **提交(Commit on release)** — 抬起且仍位于有效目标内时执行动作。
- **取消回拖(Cancel and re-enter)** — 手指移出目标可取消,重新移入可恢复候选状态。
- **焦点态(Focus state)** — 键盘、遥控器或旋钮当前操作目标。
- **悬停态(Hover state)** — 光标到达可交互对象时的反馈。
- **激活态(Active/selected state)** — 控件或导航项已经被选择的持久状态。

### 连续手势

- **跟手(Direct tracking)** — 对象在手势过程中持续随手指或指针变化。
- **速度继承(Velocity handoff)** — 离手动画沿用离手前速度,不从零开始。
- **动画衔接(Animation continuity)** — 目标改变时从当前动画状态平滑进入新动画。
- **可打断动画(Interruptible motion)** — 动画中可被新输入接管、反向或重定向。
- **边界阻尼(Boundary resistance)** — 越过边界越难继续拖动,而不是硬停止。
- **回稳(Settle)** — 离手后向边界、吸附点或稳定状态运动。
- **抛滑(Fling)** — 离手带方向和速度的滑动。
- **吸附(Snap)** — 根据位置和速度选择离散目标点。

ArkUI 关联:

- 跟手:`curves.responsiveSpringMotion()`;
- 回稳/速度衔接:`curves.springMotion()`;
- 显式物理:`curves.interpolatingSpring()`。

### 曲线

- **标准曲线(Standard curve)** — 对象前后都在屏内的加速—减速变化。
- **减速曲线(Decelerate)** — 开始快、结束慢,常用于进入视线。
- **加速曲线(Accelerate)** — 从静止逐渐加速,常用于退出视线。
- **弹性曲线(Spring)** — 由响应、阻尼或质量、刚度、速度决定的物理运动。
- **临界阻尼(Critical damping)** — 不振荡并尽快稳定。
- **欠阻尼(Underdamped)** — 越过目标并振荡后稳定。
- **过阻尼(Overdamped)** — 不越过目标,但更慢地接近稳定。

### 转场

- **同层转场** — Tab、编辑模式等相同层级状态变化。
- **上下层转场** — 父页面与子页面之间的进入和返回。
- **跨层转场** — 应用或任务上下文之间的切换。
- **共享元素转场** — 同一对象在两个页面之间连续移动和变化。
- **共享容器转场** — 容器边界、大小、圆角连续变化,内部内容再切换。
- **共享动势** — 无法直接共享对象时,保持位移、缩放或旋转的共同运动趋势。
- **一镜到底** — 使用共享关系让转场看起来不中断。
- **交叉淡化(Crossfade)** — 一个状态淡出、另一个淡入。

ArkUI 关联:`geometryTransition()`、Navigation 默认或自定义转场。

### 编排与微动效

- **错峰(Stagger)** — 多个元素以小间隔依次出现。
- **数值脉冲(Value pulse)** — 数字变化时短暂缩放或透明度反馈。
- **图标抬升(Icon lift)** — 选中图标轻微位移以表达激活。
- **状态形变(State morph)** — 同一对象在两个状态间连续改变形状或容器。
- **微动效(Micro-interaction)** — 小范围、短时、承担反馈或状态说明的运动。

这些通常是 House Style,不是统一官方要求。

### 异步状态

- **本地确认(Acknowledged)** — 客户端已收到输入,但远端尚未完成。
- **处理中(Pending)** — 操作正在等待后端、设备或耗时任务。
- **真实确认(Confirmed)** — 业务结果已经被权威状态确认。
- **乐观更新(Optimistic UI)** — 在远端确认前先更新界面,并准备失败回滚。
- **回滚(Rollback)** — 乐观结果失败后恢复先前真实状态。
- **虚假完成(False completion)** — 动效或播报暗示成功,但真实状态尚未确认。
- **响应乱序(Out-of-order response)** — 旧请求比新请求晚返回并可能覆盖新状态。

用户说“动画在撒谎”时,最佳匹配通常是 **虚假完成** 或 **异步状态不真实**,不是简单的缓动问题。

### 适配与可访问性

- **交互归一** — 同一任务在触摸、鼠标、键盘、遥控器等输入下使用符合习惯的方式完成。
- **多态控件** — 同一控件针对不同设备、输入和场景呈现不同形态与状态。
- **自适应布局** — 元素随容器连续拉伸、缩放、延伸、隐藏或折行。
- **响应式布局** — 布局在断点处变为缩进、挪移、重复或分栏。
- **语义 Token** — 用用途命名而不是用具体数值命名的设计参数。
- **永恒基础层(Evergreen Foundation)** — 预期跨多个视觉版本成立的反馈、连续性、层级、可读性和真实性原则。
- **版本化平台层(Versioned Platform Layer)** — 随 HarmonyOS/OpenHarmony/ArkUI 版本更新的组件、视觉语言、API 和默认行为。
- **项目覆盖层(Project Overlay)** — 品牌、业务风险和 House Style 对平台的产品化表达。
- **无障碍分组** — 将相关节点作为一个语义整体播报。
- **虚拟无障碍节点** — 为自绘内容提供辅助工具可识别的结构。

## 示例

用户:

> 卡片拖出去以后,松手那一下像突然刹车,然后才回去。

输出:

```markdown
**速度继承(Velocity handoff)缺失** — 离手后的回稳动画没有沿用手势最后速度,因此在松手点产生速度断层。

ArkUI 关联:跟手阶段检查 `responsiveSpringMotion()`,离手回稳检查 `springMotion()`。
边界:若卡顿来自掉帧而不是速度归零,则属于性能长帧,不是速度继承。