- 可点击的组件
“Touchable”开头的一系列组件。
- 点击事件
这些组件通过onPress属性接受一个点击事件的处理函数。
- 长按事件
onLongPress属性来实现
- 在列表中上下滑动和在视图上左右滑动
ScrollView
可以在垂直或水平方向滚动,还可以配置pagingEnabled属性来让用户整屏整屏的滑动。
ViewPagerAndroid—Android
Android上左右翻页的容器
- 双指缩放—仅支持IOS
如果在ScrollView中只放置一个组件,则可以用来实现缩放操作。设置maximumZoomScale和minimumZoomScale属性即可以使用户能够缩放其中的内容。
- PanResponder
onPanResponderMove: (event, gestureState) => {}
nativeEvent
changedTouches- 在上一次事件之后,所有发生变化的触摸事件的数组集合(即上一次事件后,所有移动过的触摸点)identifier- 触摸点的IDlocationX- 触摸点相对于父元素的横坐标locationY- 触摸点相对于父元素的纵坐标pageX- 触摸点相对于根元素的横坐标pageY- 触摸点相对于根元素的纵坐标target- 触摸点所在的元素IDtimestamp- 触摸事件的时间戳,可用于移动速度的计算touches- 当前屏幕上的所有触摸点的集合
一个gestureState对象有如下的字段:
stateID- 触摸状态的ID。在屏幕上有至少一个触摸点的情况下,这个ID会一直有效。moveX- 最近一次移动时的屏幕横坐标moveY- 最近一次移动时的屏幕纵坐标x0- 当响应器产生时的屏幕坐标y0- 当响应器产生时的屏幕坐标dx- 从触摸操作开始时的累计横向路程dy- 从触摸操作开始时的累计纵向路程vx- 当前的横向移动速度vy- 当前的纵向移动速度numberActiveTouches- 当前在屏幕上的有效触摸点的数量
