关于手势的一些小问题

手势是在APP中应用的比较多的,无处不在,为啥用手势不用button,因为在手机那么个屏上你去点和你用手势,就我个人而言,手势要好很多。。。体验。。。

项目中有个比较无语的视图层级关系,因为需要,在collectionView上有几个item,每个都有当前视图那么大,侧滑,每个item上面有一个页面webView,webView自带一个scorllView,于是这个手势就麻烦了,还好,webView只是上下滑!

一般手势无非两个方面,系统封装好的手势类,然后就是到touches方法中去获取触控点。

不知道系统是怎么处理最里层的那个触摸点的,在侧滑时collectionView的pan干活,上下滑动webView的scorllView干活

问题来了,我要侧滑显示侧边栏怎么办,朋友给了给比较cool的MMDrawerController侧边栏demo,秉着拿来就用的原则,发现,scorllView也不行,但是touches点拿不到,加手势在试图上,由于响应者链关系,只能加上层的,但是加那个都不好,于是只好放弃添加手势。

在折腾许久后,绕回来,在collectionView的scorllView的代理方法里面去通过scrollView取到他自己的pan的属性,然后通过手势自己的方法找到所在window的坐标,于是就和在touches里面一样操作了,,,

中间遇到各种关于手势的问题,就不一一列举,只觉得,系统给的scorllView关于手势的处理其实是很复杂的,不是响应者链那么简单的从上到下。另外好像在MOVE的时候的优先级是非常高的,在MOVE的过程中,你关交互,跳出响应MS都无效。

好吧,今天就说到这,吃饭,说的问题不全面,也只是一家之言,欢迎拍砖

原文地址:https://www.cnblogs.com/lingzhiguiji/p/3634393.html