0

我有很多imageViewsscrollView问题是我希望其中一个不要放大其图像。我不能将那个移到imageView外面scrollView,因为它必须根据缩放和平移手势来改变位置(框架)scrollView。有没有机会不放大这个图像imageView

4

1 回答 1

1

由于您的 imageViews 在滚动视图的大小方面具有不同的大小,因此您可以通过以下方式实现这一点

  1. 从 UIScrollView 派生一个类并在其中添加 UIImageView。如下所示:

    @interface MyScrollView : UIScrollView <UIScrollViewDelegate>
    @property(nonatomic,retain)UIImageView *imageView;
    @end
    
    @implementation
    
    -(id)initWithFrame:(CGRect)frame
    {
        self = [super initWithFrame:frame];
        {
    
            self.delegate = self;
            self.minimumZoomScale = 1.0f;
            self.maximumZoomScale = 3.0f;
            self.bounces= NO;
    
            self.imageView = [[UIImageView alloc] initWithFrame:self.bounds];
            [self addSubview:self.imageView];
        }
    
        return self;
    }
    
    -(UIView*)viewForZoomingInScrollView:(UIScrollView*)scrollView
    {
        return self.imageView;
    }
    
    @end
    
  2. 现在您可以将上述 MyScrollView 的实例添加到实际的 scrollView 中。这就像滚动视图中的滚动视图。

  3. 使您持有的滚动视图不可缩放。

  4. 通过以下方式在每个滚动视图中添加您的图像:

    [myScrollViewInstance.imageView setImage:myImage];

这样在执行捏合手势时,只有您捏合下方的 imageView 才会放大或缩小。

于 2013-08-30T14:02:27.790 回答