Я использую UIPanGestureRecognizer
, чтобы перетащить изображение из 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)
Я также пытался заменить self.view.superview
на mainView
, но безрезультатно:
let window = UIWindow(frame: UIScreen.main.bounds)
let mainView = window.rootViewController?.view
Что я делаю не так и как отследить перетаскивание изображения в глобальном масштабе?