利用UIScrollView实现图片的缩放

来源:互联网 发布:网络律师 编辑:程序博客网 时间:2024/05/01 06:55

UIScrollView的功能

如果仅仅用一个UIScrollView,可以通过向UIScrollView中添加ImageView的方式,实现图片的滚动。

-创建UIScrollView-创建ImageView,向ImageView中添加一张图片(设置尺寸)-设置滚动范围(UIScrollView的contentSize)

如果要实现图片的缩放,就要通过一个代理来实时监听用户的手势操作。

#import "ViewController.h"@interface ViewController () <UIScrollViewDelegate>//设置Viewcontroller为代理@property (strong, nonatomic) IBOutlet UIScrollView *scrollView;@property (nonatomic,weak) UIImageView *imageView;@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];    UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"nvshen"]];    [self.scrollView addSubview:imageView];    self.imageView = imageView;    self.scrollView.contentSize = imageView.frame.size;    //设置缩放比例    self.scrollView.maximumZoomScale = 2.0;    self.scrollView.minimumZoomScale = 0.5;    self.scrollView.delegate = self;}#pragma mark -<UIScrollViewDelegate>/** *返回一个需要进行缩放的子控件(scrollView的子控件) */ - (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{    return self.imageView;}@end

看一下效果图

放大时候的效果

按着option键,和鼠标配合使用来缩小图片(模拟手指的捏合)

这里写图片描述

需要注意的点

- 设置UIScroll的滚动范围;- 设置UIScrollView的代理,来监听用户的操作;
0 0