实验特征
Weex封装原生触摸事件以提供手势系统。使用手势类似于在Weex中使用事件。只需on在节点上设置属性即可收听手势。
类型
目前,有四种类型的手势:
Touch。当触摸点被放置,移动或从触摸表面移除时,触摸手势被触发。触摸手势是准确的,因为它会报告每一个微不足道的事件。因此,听触摸手势可能会很慢,即使发生小动作也需要处理大量的事件。有三种类型的触摸手势:touchstart将触摸点放置在触摸表面时触发。touchmove将在触摸点沿着触摸表面移动时被触发。touchend将触摸点从触摸表面移除时触发。shouldStopPropagation每一个触摸事件都会被触发,触摸事件是否应该通过返回true(应该是bubble)还是false(触摸此视图所消耗的事件,不会冒泡)来触发事件。这可以用来处理视图之间的触摸冲突。(自v0.18 +以来)
Pan平移手势也会报告触摸表面上的触摸点的运动,这与触摸手势相似。但是泛手势被采样并且比触摸事件更快。因此,它比触摸手势的准确性要低。Pan手势也有三种类型,这些类型的含义非常接近Touch的类型。panstartpanmovepanend
Horizontal/Vertical Pan主要用于冲突解决系统完成之前的单元划动手势。手势的开始/移动/结束状态将通过state属性传递。注意:这些手势当前与Android上的点击事件冲突。horizontalpanverticalpan
Swipe用户在屏幕上滑动触摸点时会触发滑动。一连串的动作只会触发一个滑动手势。LongPress当触摸点持续500 ms或更长时,LongPress被触发。
触摸手势和Pan非常接近,具有以下特征:
Touch未采样,准确,但速度慢。Pan采样速度快,精度较低。
属性
手势回调中可以使用以下属性:
direction。只存在滑动手势。表明轻扫direcion,从选择up,left,bottom,right。changedTouches。对当前手势有贡献的每个触摸指针的一组运动。
changedTouches
changedTouches 是一个数组,其子对象具有以下属性:
identifier。触摸指针的唯一标识符。pageX。触摸指针相对于文档左边缘的X坐标。pageY。触摸指针相对于文档顶部的Y坐标。screenX。触摸点相对于屏幕左边缘的X坐标。screenY。触摸点相对于屏幕上边缘的Y坐标。
压抑
目前,Weex的Android不支持听手势scroller,list并且webview,因为它会导致冲突的大量的事件。













