HarmonyOS 滑动时组件问题

希望通过滑动控制组件的位置,但第二次滑动时会跳一下,并且会有位置的偏移。

HarmonyOS
2024-12-25 14:09:58
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
shlp

参考示例如下:

import { display } from '@kit.ArkUI';

@Entry
@Component
export struct PanGestureExample {
  @State offsetY: number = 0
  @State positionY: number = 0
  public static windowWidth: number = display.getDefaultDisplaySync().width;

  build() {
    Column() {
    }
    .width(PanGestureExample.windowWidth)
    .height(100)
    .backgroundColor(Color.Black)
    .opacity(0.3)
    .id('bgview')
    .alignRules({
      bottom: { anchor: "__container__", align: VerticalAlign.Bottom },
      left: { anchor: "__container__", align: HorizontalAlign.Start }
    })
    .translate({ x: 0, y: this.offsetY, z: 0 })
    .gesture(
      PanGesture()
        .onActionStart((event: GestureEvent | undefined) => {
          console.info('Pan start')
        })
        .onActionUpdate((event: GestureEvent | undefined) => {
          if (event) {
            this.offsetY = this.positionY + event.offsetY
          }
        })
        .onActionEnd((event: GestureEvent | undefined) => {
          if (event) {
            this.positionY = this.offsetY
          }
          console.info('Pan end')
        })
    )
  }
}

参考文档:https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-basic-gestures-pangesture.md

分享
微博
QQ
微信
回复
2024-12-25 15:17:26
相关问题
HarmonyOS Refresh组件嵌套滑动冲突问题
1302浏览 • 1回复 待解决
TabContent内web组件滑动问题
371浏览 • 2回复 待解决
HarmonyOS Refresh跟list组件惯性滑动问题
412浏览 • 1回复 待解决
HarmonyOS 滑动问题
195浏览 • 1回复 待解决
HarmonyOS 滑动冲突问题
835浏览 • 1回复 待解决
Tab组件内嵌web view左右滑动切换问题
525浏览 • 1回复 待解决
HarmonyOS 页面嵌套滑动卡顿
160浏览 • 1回复 待解决
HarmonyOS 嵌套滑动问题
516浏览 • 1回复 待解决
HarmonyOS Slider滑动问题
664浏览 • 1回复 待解决
HarmonyOS list滑动问题
1009浏览 • 1回复 待解决
HarmonyOS scroll滑动问题
713浏览 • 1回复 待解决
HarmonyOS 图片组件手势滑动
146浏览 • 1回复 待解决