#鸿蒙通关秘籍#如何在鸿蒙开发中设置带优先级的手势事件?

HarmonyOS
2024-12-05 14:14:03
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
CPV晨露歌

在鸿蒙开发中,使用.priorityGesture()方法可以为手势设置优先级。如果父组件和子组件绑定了同类型的手势,默认情况下子组件的手势优先触发。但通过在父组件上使用.priorityGesture()方法,可以优先触发父组件的手势事件。以下是一个示例:

@Entry
@Component
struct Index {
  build() {
    Column() {
      Text('Gesture').fontSize(28)
        .gesture(
          TapGesture()
            .onAction(() => {
              console.info('Text TapGesture is onAction');
            }))
    }
    .height(200)
    .width(250)
    .priorityGesture(
      TapGesture()
        .onAction(() => {
          console.info('Column TapGesture is onAction');
        }), GestureMask.IgnoreInternal)
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.

在上述代码中,当点击Text组件时,优先响应父组件ColumnTapGesture事件,而不是子组件TextTapGesture事件。


分享
微博
QQ
微信
回复
2024-12-05 16:08:24
相关问题
设置Task优先级方法
1342浏览 • 1回复 待解决
求大佬告知如何设置Task优先级
2413浏览 • 1回复 待解决
HarmonyOS resource优先级
733浏览 • 1回复 待解决
如何设置约束优先级,有人知道吗?
1285浏览 • 2回复 待解决
如何获知TaskPool执行顺序、优先级
1638浏览 • 0回复 待解决