質問

それぞれ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];
}

GestureRecognizersの使用に関するRay Wenderlichのチュートリアルをフォローしています。だから、ある画像が別の画像と衝突すると、いくつかのコードが実行されるように、衝突を検出する方法を疑問に思っていました。コードは画像ごとに異なります。

ありがとう

役に立ちましたか?

解決

認識機で画像を移動したい場合は、認識者をビューに添付する必要があります。

これに属し、これを行うための最速の方法は(UIIMAGEVIEWでフレームを変更する方法です)

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

_selectedImageView あなたが動いているイメージです _imageArray すべてのuiimageviewを含む配列です(場合は6です)。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top