HarmonyOS 组件通过onTouch改变position中Y的值,再次点击空间会跳回原位
想做一个可以拖拽的空间,通过ontouch事件修改控件的position的Y值 但是手指松开再次点击到控件组件就会跳回原位,如何防止跳回原位?demo:
@State touchY: number = 0
@State questionViewX:number = 100
@State questionViewY:number = 100
Stack(){
Column(){
Image($r('app.media.close_circle_8a8a8a')).width('20vp').height('20vp').objectFit(ImageFit.Cover)
Image($r('app.media.UnionLogo')).width('60vp').height('60vp')
}
.position({x:this.questionViewX,y:this.questionViewY})
.onTouch((event: TouchEvent) => {
if(event){
if (event.type === TouchType.Down) {
this.touchY = event.changedTouches[0].y
}
if (event.type === TouchType.Move) {
let dy = event.changedTouches[0].y - this.touchY
this.questionViewY = 100+dy
}
if (event.type === TouchType.Up) {
// this.touchY = 0
}
}
})
.focusOnTouch(true)
.alignItems(HorizontalAlign.End)
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS position设置x,y值的更改,没有平移动画
652浏览 • 1回复 待解决
HarmonyOS 组件配置offset属性后,组件的onAreaChange中的值,position不正确
1816浏览 • 1回复 待解决
HarmonyOS onTouch中,按压值是pressure吗?值范围是多少
965浏览 • 1回复 待解决
HarmonyOS如何获取inputText的X,Y的值
1102浏览 • 1回复 待解决
Tablist 点击超出部分的tab触发点击事件 但是整个列表会自动跳回到最前面 请问怎么解决?
6048浏览 • 1回复 待解决
HarmonyOS ArkTS的class中如何动态的改变值
802浏览 • 1回复 待解决
HarmonyOS 父组件中的builder里面的怎么根据父组件的@state的值来改变。
1028浏览 • 1回复 待解决
HarmonyOS 子组件如何拿到父组件的position
676浏览 • 1回复 待解决
#鸿蒙通关秘籍# 在HarmonyOS NEXT中如何通过onTouch事件阻止触摸事件冒泡至父组件?
918浏览 • 0回复 待解决
askTs的progress组件的值改变时如何设置过度动画?
3586浏览 • 1回复 待解决
HarmonyOS toggle点击后,状态变化的回调会跟随开关值变化
2070浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何使用Position和onTouch实现HarmonyOS首页下拉进入二楼的效果?
670浏览 • 0回复 待解决
HarmonyOS 如何把Image控件的Y值与状态栏对齐
775浏览 • 1回复 待解决
父组中变量值改变,如何让子组件中的值跟着一起变化?
1598浏览 • 2回复 待解决
HarmonyOS 自定义Dialog中,进行系统返回操作时,会先关闭Dialog,再次点击才会退出当前页面
1263浏览 • 1回复 待解决
当父组件绑定了onTouch,子组件绑定了onClick,点击子组件如何阻止冒泡传递
1274浏览 • 1回复 待解决
点击拒接按钮后无法再次来电
2633浏览 • 1回复 待解决
eTS position定位点击事件穿透,怎么阻止?
5201浏览 • 1回复 待解决
HarmonyOS 应用通过StartAbility的方式拉起了三方支付应用,在三方支付应用点击取消无法跳回当前App
1299浏览 • 1回复 待解决
HarmonyOS 页面间的路由通讯回调改变值
1036浏览 • 1回复 待解决
Web组件改变@State注释的url值不会加载新页面。
1646浏览 • 1回复 待解决
HarmonyOS TextArea在onDidDelete中改变值时,双向绑定不起作用
876浏览 • 1回复 待解决
父组件onTouch,子组件onClick如何做到只响应onClick,不响应onTouch
1368浏览 • 1回复 待解决
在ontouch的时候改变了state定义的pageIndex和textPage,组件里@Link定义的数据变了,但是没有重绘
2275浏览 • 1回复 待解决
HarmonyOS web再次展示时,会闪一下
1016浏览 • 1回复 待解决
demo中用100+dy是初始高度加位移高度,所以会回到初始高度附近,建议换成 this.questionViewY = this.questionViewY+dy。
下面这个demo可以解决移动的问题,点击也不会返回原位: