我有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];
}我正在学习Ray Wenderlich关于使用GestureRecognizers的教程。所以,我想知道如何检测冲突,这样当一个图像与另一个图像发生冲突时,一些代码就会运行。每个图像的代码是不同的。
谢谢
发布于 2011-12-08 01:29:25
如果你想用识别器移动图像,也许你应该把识别器附加到你的视图上。
属于这一点的,最快的方法是(在改变UIImageView帧的方法中)
for (UIImageView *iv in _imageArray){
if (CGRectIntersectsRect(iv.frame, _selectedImageView.frame)) {
NSLog(@"Collision");
}
}_selectedImageView是您正在移动的图像,_imageArray是一个包含所有UIImageView的数组(在本例中为6)。
https://stackoverflow.com/questions/8369565
复制相似问题