我想消费掉触摸事件应该返回什么 onTouch - HarmonyOS 鸿蒙Next
我想消费掉触摸事件应该返回什么 onTouch - HarmonyOS 鸿蒙Next
onTouch(event: (event: TouchEvent) => void): CommonAttribute {
return //消费掉触摸事件,以防传回到父页面
}
event.stopPropagation()
// 或者
event.preventDefault()
更多关于我想消费掉触摸事件应该返回什么 onTouch - HarmonyOS 鸿蒙Next的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
你看我下一个帖子里面,这里还是报错
用最新API 12
event.preventDefault()在API 12中 event.stopPropagation()小于API 12
如果你想onTouch不在执行就看这个文档中的拦截事件 https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-universal-attributes-on-touch-intercept-V5
在HarmonyOS鸿蒙Next系统中,要消费掉触摸事件,你需要在onTouch
方法的返回值中做相应处理。onTouch
方法通常是一个布尔类型的返回值,这个返回值决定了事件是否应该继续传递或被当前组件消费。
具体来说,如果onTouch
方法返回true
,表示触摸事件已被当前组件消费,事件将不会继续向下(如子视图)或向上(如父视图)传递。这通常用于处理自定义的触摸逻辑,如滑动、点击等,并阻止这些事件触发其他默认行为或进一步的事件监听。
如果onTouch
方法返回false
,则表示触摸事件未被当前组件消费,事件将继续传递,可能会触发子视图或父视图的事件监听器。
因此,在你的onTouch
方法中,根据是否要消费事件,返回true
或false
。例如:
@Override
public boolean onTouch(View v, MotionEvent event) {
// 自定义触摸事件处理逻辑
// 如果处理完成并希望消费事件,返回true
// 否则,返回false让事件继续传递
return true; // 或 false,根据实际需求决定
}
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html