Question

I have 2 imageviews that I want to be able to move. This is my code:

panRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(gestureRecognizerMethod:)];

imageview = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"image.png"]];
imageview.frame = CGRectMake(390, 100, 80, 16);
imageview.userInteractionEnabled = YES;
[imageview addGestureRecognizer:panRecognizer];
[self addSubview:imageview];

imageview2 = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"image.png"]];
imageview2.frame = CGRectMake(390, 120, 80, 17);
imageview2.userInteractionEnabled = YES;
[imageview2 addGestureRecognizer:panRecognizer];
[self imageview2];

And in my gestureRecognizer method:

- (void)gestureRecognizerMethod:(UIPanGestureRecognizer *)recognizer
{
    if (recognizer.view == imageview)
    {
        if (recognizer.state == UIGestureRecognizerStateBegan || recognizer.state ==  UIGestureRecognizerStateChanged)
        {
            CGPoint startPoint = [recognizer locationInView:self];
            imageview.center = startPoint;
        }
    }
    if (recognizer.view == imageview2)
    {
        if (recognizer.state == UIGestureRecognizerStateBegan || recognizer.state == UIGestureRecognizerStateChanged)
        {
            CGPoint startPoint = [recognizer locationInView:self];
            imageview2.center = startPoint;
        }
    }
}

I'm only able to move one of the view. What is wrong?

Was it helpful?

Solution 2

Try this:

ResizeImage on github

OTHER TIPS

Create a new gesture recognizer for the second image view. You can use the same target and action for both recognisers but you can only attach any one recogniser to a single view.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top