Frage

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

War es hilfreich?

Lösung

Solved my problem by using

[imageScrollView setZoomScale:sender.value];

to update the zoom when the slider is changed.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top