Note that there are some explanatory texts on larger screens.

plurals
  1. POOnly increase height or width using pinch gesture
    primarykey
    data
    text
    <blockquote> <p><strong>Possible Duplicate:</strong><br> <a href="https://stackoverflow.com/questions/6759028/using-uipinchgesturerecognizer-to-scale-uiviews-in-single-direction">Using UIPinchGestureRecognizer to scale uiviews in single direction</a> </p> </blockquote> <p><strong>My code is below:</strong></p> <pre><code> UIPinchGestureRecognizer *croperViewGessture = [[UIPinchGestureRecognizer alloc]initWithTarget:self action:@selector(croperViewScale:)]; croperViewGessture.delegate=self; [croperView addGestureRecognizer:croperViewGessture]; -(void)CanvasScale:(id)sender { if([(UIPinchGestureRecognizer *)sender state]==UIGestureRecognizerStateBegan) { if ([sender numberOfTouches] == 2) { _pntOrig[0] = [(UIPinchGestureRecognizer *)sender locationOfTouch:0 inView:cropedAngle]; _pntOrig[1] = [(UIPinchGestureRecognizer *)sender locationOfTouch:1 inView:cropedAngle]; } else { _pntOrig[0] = [(UIPinchGestureRecognizer *)sender locationInView:cropedAngle]; _pntOrig[1] = _pntOrig[0]; } _lenOrigX = fabs(_pntOrig[1].x - _pntOrig[0].x); _lenOrigY = fabs(_pntOrig[1].y - _pntOrig[0].y); _xScale = 1.0; _yScale = 1.0; } if ([(UIPinchGestureRecognizer *)sender state] == UIGestureRecognizerStateChanged) { if ([sender numberOfTouches] == 2) { CGPoint pntNew[2]; pntNew[0] = [(UIPinchGestureRecognizer *)sender locationOfTouch:0 inView:cropedAngle]; pntNew[1] = [(UIPinchGestureRecognizer *)sender locationOfTouch:1 inView:cropedAngle]; CGFloat lenX = fabs(pntNew[1].x - pntNew[0].x); CGFloat lenY = fabs(pntNew[1].y - pntNew[0].y); CGFloat dX = fabs(lenX - _lenOrigX); CGFloat dY = fabs(lenY - _lenOrigY); CGFloat tot = dX + dY; CGFloat pX = dX / tot; CGFloat pY = dY / tot; CGFloat scale = [(UIPinchGestureRecognizer *)sender scale]; CGFloat dscale = scale - 1.0; _xScale = dscale * pX + 1; _yScale = dscale * pY + 1; } } CGAffineTransform transform = cropedAngle.transform; CGAffineTransform newTarnsform = CGAffineTransformScale(transform, _lenOrigX, _lenOrigY); [cropedAngle setTransform:newTarnsform]; </code></pre> <p>}</p> <p>But problem is that when I do Zoomin OR Zoomout then view spread on all over the screen and after it disable Please view my code and tell me what is wrong . </p> <p>Please help me in this issue i am Thankfull in advance. </p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload