Domanda

I have a Image View

I Can zoom in and zoom out Image with two fingers using following code

{
[super viewDidload]
 imageScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320 ,420)];      
      [imageScrollView addSubview:imgView];

      // imageScrollView.minimumZoomScale=0.75;
      imageScrollView.maximumZoomScale=6.0;

      imageScrollView.zoomScale = 0.29;
      imageScrollView.delegate=self;
      [self.view addSubview:imageScrollView];
}


 //UIScrollViewDelegate methods for Zoom

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
      return imgView;
}



- (CGRect)zoomRectForScrollView:(UIScrollView *)ImgscrollView withScale:(float)scale withCenter:(CGPoint)center 
{
      CGRect zoomRect;
      zoomRect.size.height = ImgscrollView.frame.size.height / scale;
      zoomRect.size.width  = ImgscrollView.frame.size.width  / scale;
      // choose an origin so as to get the right center.
      zoomRect.origin.x = center.x - (zoomRect.size.width  / 2.0);
      zoomRect.origin.y = center.y - (zoomRect.size.height / 2.0);
      return zoomRect;
}

But my requirement is to increase or decrease zoom levels with slide values instead of two fingers zoom.

 - (IBAction) sliderValueChange:(UISlider *)sender
 {
     //--- ???????
  }

enter image description here

By changing slider value to increase the zoom level of image increase and same in decrease zoom level by decreasing slider values

È stato utile?

Soluzione

Solved my problem by using

[imageScrollView setZoomScale:sender.value];

to update the zoom when the slider is changed.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top