Вопрос

У меня есть 6 uiimageviews, каждый из которых подключен к Uipangesturerecognizer, и все они подключены к одному и тому же методу. Метод:

- (IBAction)handlePan:(UIPanGestureRecognizer *)recognizer {

CGPoint translation = [recognizer translationInView:self.view];
recognizer.view.center = CGPointMake(recognizer.view.center.x + translation.x, 
                                     recognizer.view.center.y + translation.y);
[recognizer setTranslation:CGPointMake(0, 0) inView:self.view];
}

Я следую учебному пособию Рэя Вендерлиха по использованию GesturereCogniceers. Итак, мне было интересно, как обнаружить столкновения, чтобы, когда одно изображение сталкивается с другим изображением, запускается какой -то код. Код отличается для каждого изображения.

Спасибо

Это было полезно?

Решение

Если вы хотите переместить изображение с распознавателем, возможно, вам следует прикрепить распознаватель к вашему виду.

Принадлежит к этому, самый быстрый способ сделать это, это (в методе, который изменяет кадр на вашем Uiimageview)

for (UIImageView *iv in _imageArray){
   if (CGRectIntersectsRect(iv.frame, _selectedImageView.frame)) {
      NSLog(@"Collision");
   }
}

_selectedImageView это изображение, которое вы двигаетесь и _imageArray это массив, который содержит все ваши Uiimageview (в вашем случае 6).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top