iphone uiscrollview和uiimageview - 设置初始缩放

Bro*_*die 7 iphone zoom objective-c uiscrollview uiimageview

我使用以下代码将图像加载到滚动视图中.图像始终以100%变焦加载.有没有办法将其设置为加载到另一个缩放级别,比如.37?

我试过scrollView.zoomScale = .37但它似乎没有用

UIImageView *tempImage = [[UIImageView alloc]initWithImage:[UIImage imageWithData:data]];
        self.imageView = tempImage;

        scrollView.contentSize = CGSizeMake(imageView.frame.size.width , imageView.frame.size.height);
        scrollView.maximumZoomScale = 1;
        scrollView.minimumZoomScale = .37;
        scrollView.clipsToBounds = YES;
        scrollView.delegate = self;

        [scrollView addSubview:imageView];
Run Code Online (Sandbox Code Playgroud)

dra*_*ard 18

缩放仅在实现viewForZoomingInScrollView:委托回调时有效.

-(UIView *) viewForZoomingInScrollView:(UIScrollView *)inScroll {
  return imageView;
}
Run Code Online (Sandbox Code Playgroud)


Bro*_*die 13

我想通了......我用的是scrollView.zoomScale = 0.37; 在我加载图像之前更改了代码并且它工作得很好.

UIImageView *tempImage = [[UIImageView alloc]initWithImage:[UIImage imageWithData:data]];
self.imageView = tempImage;

scrollView.contentSize = CGSizeMake(imageView.frame.size.width , imageView.frame.size.height);
scrollView.maximumZoomScale = 1;
scrollView.minimumZoomScale = .37;
scrollView.clipsToBounds = YES;
scrollView.delegate = self;
[scrollView addSubview:imageView];
scrollView.zoomScale = .37;
Run Code Online (Sandbox Code Playgroud)