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组件如何开启手势缩放
1365浏览 • 1回复 待解决
HarmonyOS如何控制组件的属性输出
143浏览 • 1回复 待解决
Image组件如何实现双指手势放大
1978浏览 • 1回复 待解决
如何处理默认自带手势的系统组件进行手势绑定时的冲突场景
232浏览 • 1回复 待解决
基于滚动组件的手势处理
172浏览 • 1回复 待解决
HarmonyOS 如何是实现手势密码功能
148浏览 • 1回复 待解决
如何控制canvas组件的刷新呢
133浏览 • 1回复 待解决
求教 JS UI中的是否支持手势控制图片放大缩小
5570浏览 • 1回复 待解决
路由跳转如何通过scheme方式分发
491浏览 • 1回复 待解决
HarmonyOS 触摸事件是否有分发和拦截?
161浏览 • 1回复 待解决
VideoController如何控制子组件中的视频播放
835浏览 • 2回复 待解决
如何自定义Video组件控制栏样式
1928浏览 • 1回复 待解决
求大佬告知如何上架分发
53浏览 • 1回复 待解决
Swiper组件设置不跟随手势滑动
159浏览 • 1回复 待解决
HarmonyOS如何实现相机(并且支持手势)缩放,系统自带的相机缩放组件是否有开源?
141浏览 • 1回复 待解决
HarmonyOS如何实现gif图片控制
49浏览 • 1回复 待解决
Span组件禁用控制(enable)、显隐控制(visibility)属性设置无效
1501浏览 • 1回复 待解决
HarmonyOS如何实现自定义布局内置手势
125浏览 • 0回复 待解决
toggle组件设置拖动的同时如何屏蔽其本身的点击手势
201浏览 • 1回复 待解决
鸿蒙事件拦截分发处理
10041浏览 • 2回复 待解决
HarmonyOS 如何获取屏幕下方手势响应区域AvoidArea的高度
152浏览 • 1回复 待解决
HarmonyOS 如何代码控制软键盘弹出?
93浏览 • 1回复 待解决
Web组件中如何通过手势滑动返回上一个Web页面
2204浏览 • 1回复 待解决
如何方便的测试分发,谁有好的方案?
408浏览 • 1回复 待解决
在Web组件中如何监听手势滑动返回上一个Web页面
227浏览 • 1回复 待解决
给C组件绑定个ontouch事件,分别在C和B的ontouch事件中都调用event.stopPropagation() 阻止事件冒泡可达到预期效果
可参考以下demo: