首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我无法放大UIScrollView中的这个UIImageView?

为什么我无法放大UIScrollView中的这个UIImageView?
EN

Stack Overflow用户
提问于 2013-12-08 04:38:08
回答 1查看 152关注 0票数 1

我正在寻找一个UIScrollView内部的UIImageView,它可以放大,然后左右摇摄和一切。所有这些都是在代码中完成的,没有使用IB。

我尝试添加图像和滚动视图,如下所示:

代码语言:javascript
复制
    self.imageBeingOverlayed = [[UIImageView alloc] initWithImage:responseObject];
    self.imageBeingOverlayed.contentMode = UIViewContentModeScaleAspectFit;

    self.imageBeingOverlayedScrollView = [[UIScrollView alloc] initWithFrame:[UIScreen mainScreen].bounds];
    self.imageBeingOverlayedScrollView.contentSize = ((UIImage *)responseObject).size;
    self.imageBeingOverlayedScrollView.maximumZoomScale = 5.0;
    self.imageBeingOverlayedScrollView.minimumZoomScale = 0.5;

    [self.imageBeingOverlayedScrollView addSubview:self.imageBeingOverlayed];
    [darkOverlayView addSubview:self.imageBeingOverlayedScrollView];

在创建图像视图的位置,然后将其添加到我创建的滚动视图中(这两个对象都可以在整个文件中访问)。使用我创建的滚动视图,我只想让它和图像一样大,但我对如何创建框架感到困惑。也许就是这个原因。

但是不管怎样,我设置了最大和最小缩放比例,在viewDidLoad中将scrollview的委托设置为self,并且我也实现了这个方法:

代码语言:javascript
复制
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {
    return self.imageBeingOverlayed;
}

但当我运行这个应用程序并使用一个相当大的图像时,图像可以平移,但根本不能放大。怎么回事?

EN

回答 1

Stack Overflow用户

发布于 2013-12-08 05:40:35

根据描述,在设置minimumZoomScalemaximumZoomScale之前没有设置scrollView的委托。在这种情况下,因为委托仍然是nil,所以对viewForZoomingInScrollView的调用不起作用。要解决此问题,请尝试在代码中设置委托后设置contentSizeminimumZoomScalemaximumZoomScale

代码语言:javascript
复制
self.imageBeingOverlayedScrollView.delegate = self;
self.imageBeingOverlayedScrollView.contentSize = self.imageBeingOverlayed.image.size;
self.imageBeingOverlayedScrollView.maximumZoomScale = 5.0;
self.imageBeingOverlayedScrollView.minimumZoomScale = 0.5;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20446341

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档