GestureDetector
2016-04-26 12:37:04 0 举报
GestureDetector是一个用于检测手势的类,它继承自Widget。它可以识别多种手势,如点击、双击、长按、滑动等。通过GestureDetector,我们可以方便地为Flutter应用添加手势交互功能。使用GestureDetector时,需要将其包裹在需要监听手势的组件外,并传入相应的回调函数。当手势被识别时,回调函数会被触发,从而实现相应的功能。例如,我们可以通过GestureDetector实现一个按钮的点击效果,或者监听屏幕的滑动来切换页面等。总之,GestureDetector是Flutter中处理手势事件的重要工具,为我们提供了丰富的手势识别和处理能力。
作者其他创作
大纲/内容
Y
设置WheelView的滚动标志为true
onTouchEvent
进行滚动调整
N
计算重绘后的剩余偏移mScrollingOffset
向Handler发送MESSAGE_SCROLL消息调用Scroller的computeScrollOffset方法
停止WheelView滚动,消费ACTION_DOWN事件
GestureDetector.onTouchEvent
当前WheelView是否在滚动
累加滚动偏移量mScrollingOffset
调用Scroller的fling方法
根据MotionEvent判断手势类型
调用Scroller的startScroll方法滚动offset距离
onDown事件
onFlying事件
根据滚动偏移量和每一个item的高度计算需要滚动的item数量count
根据滚动offset的正负来增加item的高度
向Handler发送MESSAGE_JUSTIFY消息
onScroll事件
ACTION_UP事件
判断是否需要滚动补偿
selectPosition滚动count的值后,调用invalidate进行重绘
0 条评论
下一页
为你推荐
查看更多
抱歉,暂无相关内容