Swift UIPAngestureRecognitor全局平移坐标
我正在使用Swift UIPAngestureRecognitor全局平移坐标,swift,uigesturerecognizer,uipangesturerecognizer,Swift,Uigesturerecognizer,Uipangesturerecognizer,我正在使用uipangestureerecognizer将一幅图像从UICollectionViewCell中拖出,然后查看它是否与屏幕上其他地方的另一幅图像冲突。 为此,我需要能够匹配他们的翻译坐标。我的理解是,由于图像位于collectionView单元内,因此它是相对单元坐标跟踪的,我需要全局跟踪 |---------------------------------------| | _______ | | |_ima
uipangestureerecognizer
将一幅图像从UICollectionViewCell
中拖出,然后查看它是否与屏幕上其他地方的另一幅图像冲突。
为此,我需要能够匹配他们的翻译坐标。我的理解是,由于图像位于collectionView单元内,因此它是相对单元坐标跟踪的,我需要全局跟踪
|---------------------------------------|
| _______ |
| |_image_| |
| |
|---------------------------------------|
| |image| Collection View |
|---------------------------------------|
到目前为止,当我将图像拖到另一个图像上时,我会将其作为日志:
moved imageView center: (-44.0, -143.5)
destination imageView center: (440.0, 175.0)
let translation = panGesture.translation(in: self.view.superview)
self.view.center = CGPoint(x: self.initialLocation.x + translation.x, y: self.initialLocation.y + translation.y)
我还尝试用mainView
替换self.view.superview
,但没有效果:
let window = UIWindow(frame: UIScreen.main.bounds)
let mainView = window.rootViewController?.view
我做错了什么?如何在全球范围内跟踪拖动的图像?要实现这一点,您必须遵循以下步骤
panGesture
时,您必须创建一个视图/imageview
(无论是什么)self.view
(VC主视图)的子视图视图/imageview
,以便在用户交互中,它看起来就像用户移动相同的视图/Imgview
panGesture
结束时,取消隐藏该图像