作者www16852 (LM31)
看板MacDev
标题[问题] 被覆盖的view如何同时触发手势
时间Sun Feb 14 03:57:50 2016
各位高手好,
想问一下关於UIPanGestureRecognizer的问题
我设计一个collectionView 在上面移动cell时,会触发cell的手势
这是一个新增图片在画面上拖动的功能
我想让我再对cell进行手势的时候 collection也可以上下滑动
目前想到的解法有:
1.我利用cell的delegate gestureRecognizerShouldBegin
去判断我的手势移x比较多还是y比较多,如果y比较多就回传false
让collectionView接收手势
结果:效果不错,不过我想要调整得更好,因为使用者斜着使用时会常常无法触发cell手势
2.我在我的cell手势里加入了程式码,
当y变动时使collectionView.contentOffsey.y与其相等
这个方法等於我直接将collection上下滑动的功能自己写在自订手势里面
不晓得有没有方法可以直接呼叫collectionView的手势
结果:做出来是我想要的结果没错,不过在拉到最上面和最下面的时候是直接卡住的,
如果真的要写成原本的效果可能需要花不少时间
3.覆写hitTest
我不知道该怎麽实现我需要的功能,我试过return superView
会变成说只有我的collectionView能够操作
试过用collctionView.subviews 去抓cell不过我的手势写在controller里
需要和其他的view互动
是不是我的架构有问题呢?
4.使用collectionView delegate 的 scrollViewWillBeginDragging
我想利用这个方法去抓我控制哪一个cell在执行函式
不过我好像没办法抓到我的手势,他得参数不是UIpanGestureRecognizer
不晓得有甚麽方法可以让cell得手势执行又让collection拖动的
写得有点冗长,希望不会造成阅读上的麻烦
还是用第四个方法覆写touch去抓座标阿,刚刚想到我明天再试试看...
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.39.210.41
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MacDev/M.1455393472.A.6B7.html
※ 编辑: www16852 (114.39.210.41), 02/14/2016 04:02:05