uipangesturerecognizer衝突
-
27-10-2019 - |
質問
それぞれ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です)。
所属していません StackOverflow