このサイトは、UIPanGestureRecognizer を使用して UIImageView を移動する方法を説明するのに非常に役立ちましたが、複数の UIImageView を移動 (つまり、パン) する必要があるプログラムがあり、一生見つけることができません。それを行う方法の例。
UIPanGestureRecognizer が UIView に割り当てられていることは理解していますが、UIView 内の任意の UIImageView をパンできるのではなく、以下のコードに示すように、UIView で 1 つの UIImageView のみをパンするコードしか知りません。
これが私が使用したコードです。
- (void)viewDidLoad {
UIPanGestureRecognizer *panRecognizer = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(move:)];
[panRecognizer setMinimumNumberOfTouches:1];
[panRecognizer setMaximumNumberOfTouches:1];
[_canvas addGestureRecognizer:panRecognizer];
[super viewDidLoad]; }
-(void)move:(id)sender {
CGPoint translatedPoint = [(UIPanGestureRecognizer*)sender translationInView:_canvas];
if([(UIPanGestureRecognizer*)sender state] == UIGestureRecognizerStateBegan) {
_firstX = [photoImage center].x;
_firstY = [photoImage center].y;
}
translatedPoint = CGPointMake(_firstX+translatedPoint.x, _firstY+translatedPoint.y);
[photoImage setCenter:translatedPoint]; }
photoImage という名前の UIImageView をパンできますが、複数の UIImageView をパンするコードがどのようになるかはわかっています。
よろしくお願いいたします。