路径动画

2024-01-22 18:19 更新

设置组件进行位移动画时的运动路径。

说明

从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。

属性

名称

参数

描述

motionPath

{

path: string,

from?: number,

to?: number,

rotatable?: boolean

}

设置组件的运动路径。

- path:位移动画的运动路径,使用svg路径字符串。path中支持使用start和end进行起点和终点的替代,如:'Mstart.x start.y L50 50 Lend.x end.y Z',更多说明请参考绘制路径

- from:运动路径的起点。

取值范围:[0, 1]

- to:运动路径的终点。

取值范围:[0, 1]

- rotatable:是否跟随路径进行旋转。

示例

  1. // xxx.ets
  2. @Entry
  3. @Component
  4. struct MotionPathExample {
  5. @State toggle: boolean = true
  6. build() {
  7. Column() {
  8. Button('click me').margin(50)
  9. // 执行动画:从起点移动到(300,200),再到(300,500),再到终点
  10. .motionPath({ path: 'Mstart.x start.y L300 200 L300 500 Lend.x end.y', from: 0.0, to: 1.0, rotatable: true })
  11. .onClick(() => {
  12. animateTo({ duration: 4000, curve: Curve.Linear }, () => {
  13. this.toggle = !this.toggle // 通过this.toggle变化组件的位置
  14. })
  15. })
  16. }.width('100%').height('100%').alignItems(this.toggle ? HorizontalAlign.Start : HorizontalAlign.Center)
  17. }
  18. }

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号