测试代码:
//
// RootViewController.m
// my_ScrollView
//
// Created by fenghuo on 14-7-21.
// Copyright (c) 2014年 fenghuo. All rights reserved.
//
#import "RootViewController.h"
@interface RootViewController () <UIScrollViewDelegate>
{
UIScrollView *scrollView;
UIImageView *_imgView;
}
@end
@implementation RootViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 20, 320, 460)];
scrollView.backgroundColor = [UIColor clearColor];
scrollView.delegate = self;
// 设置内容大小
scrollView.contentSize = CGSizeMake(320, 460 * 10);
[self.view addSubview:scrollView];
// 设置最小,最大缩放比例
scrollView.minimumZoomScale = 0.5;
scrollView.maximumZoomScale = 2;
_imgView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
_imgView.image = [UIImage imageNamed:@"1.jpg"];
[scrollView addSubview:_imgView];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
#pragma mark - UIScrollViewDelegate
// 返回一个放大或者缩小的视图
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
return _imgView;
}
// 开始放大或者缩小
- (void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(UIView *)view
{
NSLog(@"scrollViewWillBeginZooming");
}
// 缩放结束时
- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(CGFloat)scale
{
NSLog(@"scrollViewDidEndZooming");
}
// 视图已经放大或缩小
- (void)scrollViewDidZoom:(UIScrollView *)scrollView
{
NSLog(@"scrollViewDidZoom");
}
@end
运行结果:
2014-07-21 17:47:03.310 my_ScrollView[3619:a0b] scrollViewWillBeginZooming
2014-07-21 17:47:03.327 my_ScrollView[3619:a0b] scrollViewDidZoom
2014-07-21 17:47:03.328 my_ScrollView[3619:a0b] scrollViewDidZoom
2014-07-21 17:47:03.361 my_ScrollView[3619:a0b] scrollViewDidZoom
2014-07-21 17:47:03.543 my_ScrollView[3619:a0b] scrollViewDidZoom
2014-07-21 17:47:03.561 my_ScrollView[3619:a0b] scrollViewDidZoom
2014-07-21 17:47:03.594 my_ScrollView[3619:a0b] scrollViewDidZoom
2014-07-21 17:47:03.627 my_ScrollView[3619:a0b] scrollViewDidZoom
2014-07-21 17:47:03.897 my_ScrollView[3619:a0b] scrollViewDidEndZooming