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

说明:从API Version 7开始支持。开发语言ets.


示例代码:

@Entry
@Component
struct PathAnimation {
  @State toggle: boolean = true

  build() {
    Column() {
      Button('click me')
        // 执行动画:从起点移动到(300,200),再到(300,500),再到终点
        .motionPath({ path:  'Mstart.x start.y L400 300 L300 500 Lend.x end.y', from: 0.0, to: 1.0, rotatable: true })
        .onClick(() => {
          animateTo({ duration: 4000, curve: Curve.Linear }, () => {
            this.toggle = !this.toggle // 通过this.toggle变化组件的位置
          })
        })
    }.width('100%').height('50%').borderWidth(2)
    .alignItems(this.toggle ? HorizontalAlign.Start : HorizontalAlign.End)
    .justifyContent(this.toggle ? FlexAlign.Start : FlexAlign.End)
  }
}

示例效果:

代码地址:Gitee 企业版

Logo

社区规范:仅讨论OpenHarmony相关问题。

更多推荐