我有一个可拖动视图(UIImageView),我可以使用UIPanGestureRecognizer和以下方法控制其定位和拖动:
- (void)imageDragged:(UIPanGestureRecognizer *)gesture
{
UIImageView *img = (UIImageView *)gesture.view;
CGPoint translation = [gesture translationInView:img];
img.center = CGPointMake(img.center.x + translation.x,
img.center.y + translation.y);
// reset translation
[gesture setTranslation:CGPointZero inView:img];
}
除了可拖动的视图外,我还有一个UICollectionView,它当然是由UICollectionViewCells构建的。我想做的是,确定何时将我的可拖动视图拖动到集合视图单元格之一的顶部。
我想在imageDragged方法中添加一个布尔值,以了解当前何时拖动视图,但是我无法弄清楚如何知道何时拖动的触摸位于集合视图单元格的顶部。UICollectionView具有didSelect委托方法,但是如果我的点击没有发生在单元格上,而是在可拖动的视图上,那并没有真正帮助我。
任何帮助将非常感激!
我不知道是否有更整齐的方法,但是也许您可以获取水龙头的位置和/或拖动的UIView的角上的一些点,然后使用CGRectContainsPoint来查看这些点是否在集合视图的矩形内细胞。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句