十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
前几天用了个app发现左滑可以返回首页,发现这个功能很炫酷,就想着自己能不能做出来,于是研究了一下
原理
原理很简单,但实现起来可能有些坑。这里记录一下。源码参考
处理onInterceptTouchEvent
事件拦截要处理一件事情:确定这次触摸事件是不是应该交给SlideFinishLayout的onTouchEvent处理。
override fun onInterceptTouchEvent(ev: MotionEvent): Boolean { val action = ev.action when (action){ MotionEvent.ACTION_DOWN -> { mLastX = ev.x.toInt() mIsDrag = false } MotionEvent.ACTION_MOVE -> { mScroller.computeScrollOffset() mIsDrag = !mScroller.isFinished val deltaY:Int = ev.x.toInt() - mLastX if (deltaY >= mTouchSlop){ mIsDrag = true } } } return mIsDrag }