HarmonyOS 如何从子组件控制手势分发
多层组价嵌套的情况下,如何控制手势,使手势只在目标控件上相应
组件A在最外层,绑定了onTouch方法。
组件B是A的子组件,绑定了onTouch方法。
组件C是B的子组件,绑定了onClick方法
目标:
点击C时,只响应C的onClick方法。A,B的onTouch方法不响应
触摸B时,只响应B的onTouch方法。A的onTouch方法不响应
触摸A时,正常响应A的onTouch
我们在使用hitTestBehavior属性配合时,没有能实现
下面是个嵌套demo,如果有好的方式,可以直接在这上面修改,谢谢!!!
@Entry
@Component
struct TestGesture {
build() {
Column() {
Column() {
Text("C")
.width("50%")
.height("50%")
.textAlign(TextAlign.Center)
.onClick(() => {
console.log("testC Click")
})
.monopolizeEvents(true)
.backgroundColor(Color.Pink)
}.width("50%")
.height("50%")
.onTouch(() => {
console.log("testB Touch")
}).backgroundColor(Color.Orange)
}.width("100%")
.height("100%")
.onTouch(() => {
console.log("testA Touch")
}).backgroundColor(Color.Blue)
}
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
Web组件如何开启手势缩放
1547浏览 • 1回复 待解决
HarmonyOS如何控制组件的属性输出
292浏览 • 1回复 待解决
Image组件如何实现双指手势放大
2230浏览 • 1回复 待解决
HarmonyOS Image组件是否支持手势缩放呢?
299浏览 • 1回复 待解决
HarmonyOS SideBarContainer如何实现手势滑动控制侧滑栏的开关和关联页面的移入移出效果?
175浏览 • 1回复 待解决
HarmonyOS 半模态转场+Gesture 手势组件SwipeGesture问题
327浏览 • 1回复 待解决
求大佬告知如何上架分发
241浏览 • 1回复 待解决
如何处理默认自带手势的系统组件进行手势绑定时的冲突场景
448浏览 • 1回复 待解决
求教 JS UI中的是否支持手势控制图片放大缩小
5707浏览 • 1回复 待解决
如何控制canvas组件的刷新呢
327浏览 • 1回复 待解决
路由跳转如何通过scheme方式分发
728浏览 • 1回复 待解决
事件分发冲突问题,如何解决?
257浏览 • 1回复 待解决
基于滚动组件的手势处理
348浏览 • 1回复 待解决
HarmonyOS 轮播swiper组件如何手动控制跳转到某个Index
300浏览 • 1回复 待解决
HarmonyOS 如何是实现手势密码功能
361浏览 • 1回复 待解决
HarmonyOS 如何禁用页面返回手势?
109浏览 • 1回复 待解决
VideoController如何控制子组件中的视频播放
1179浏览 • 2回复 待解决
如何自定义Video组件控制栏样式
2239浏览 • 1回复 待解决
HarmonyOS 触摸事件是否有分发和拦截?
379浏览 • 1回复 待解决
HarmonyOS Web组件中onInterceptRequest如何控制返回实现按需拦截加载?
88浏览 • 1回复 待解决
HarmonyOS 如何在ArkTS组件中动态控制是否使用组件的某个属性
293浏览 • 0回复 待解决
SwiperControllerSwiper容器组件的控制器,可以将此对象绑定至Swiper组件,如何通过它控制翻页
232浏览 • 1回复 待解决
HarmonyOS 如何在自定义弹窗组件CustomDialogController弹窗时禁用系统手势返回?
196浏览 • 1回复 待解决
HarmonyOS上如何控制相机拍照?
39浏览 • 0回复 待解决
HarmonyOS 半模态转场,如何透传手势?
215浏览 • 1回复 待解决
给C组件绑定个ontouch事件,分别在C和B的ontouch事件中都调用event.stopPropagation() 阻止事件冒泡可达到预期效果
可参考以下demo: