
如何编程实现UIScrollView的放大缩小
1个回答
推荐于2016-11-05
展开全部
MJViewController.h
#import <UIKit/UIKit.h>
@interface MJViewController : UIViewController
@end
2
MJViewController.m
#import "MJViewController.h"
@interface MJViewController () <UIScrollViewDelegate>
{
UIImageView *_imageView;
}
@end
@implementation MJViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// 1.添加UIScrollView
UIScrollView *scrollView = [[UIScrollView alloc] init];
// scrollView.frame = CGRectMake(0, 0, 320, 460);
scrollView.frame = self.view.bounds;
[self.view addSubview:scrollView];
// 2.添加图片
UIImage *image = [UIImage imageNamed:@"big.jpg"];
// 调用initWithImage:方法创建出来的UIImageView,它的宽高默认跟图片的宽高一样
_imageView = [[UIImageView alloc] initWithImage:image];
// // 设置图片
// imageView.image = [UIImage imageNamed:@"big.jpg"];
//
// // 设置frame
// imageView.frame = CGRectMake(0, 0, imageView.image.size.width, imageView.image.size.height);
[scrollView addSubview:_imageView];
// 设置内容范围
scrollView.contentSize = image.size;
// 设置scrollview的代理对象
scrollView.delegate = self;
// 设置最大伸缩比例
scrollView.maximumZoomScale = 2.0;
// 设置最小伸缩比例
scrollView.minimumZoomScale = 0.2;
}
#pragma mark - UIScrollView 的 代理方法
#pragma mark 这个方法返回的控件就能进行捏合手势缩放操作
#pragma mark 当UIScrollView尝试进行缩放的时候就会调用
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
return _imageView;
}
#pragma mark 当缩放完毕的时候调用
- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale
{
// NSLog(@"结束缩放 - %f", scale);
}
#pragma mark 当正在缩放的时候调用
- (void)scrollViewDidZoom:(UIScrollView *)scrollView
{
// NSLog(@"-----");
}
@end
#import <UIKit/UIKit.h>
@interface MJViewController : UIViewController
@end
2
MJViewController.m
#import "MJViewController.h"
@interface MJViewController () <UIScrollViewDelegate>
{
UIImageView *_imageView;
}
@end
@implementation MJViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// 1.添加UIScrollView
UIScrollView *scrollView = [[UIScrollView alloc] init];
// scrollView.frame = CGRectMake(0, 0, 320, 460);
scrollView.frame = self.view.bounds;
[self.view addSubview:scrollView];
// 2.添加图片
UIImage *image = [UIImage imageNamed:@"big.jpg"];
// 调用initWithImage:方法创建出来的UIImageView,它的宽高默认跟图片的宽高一样
_imageView = [[UIImageView alloc] initWithImage:image];
// // 设置图片
// imageView.image = [UIImage imageNamed:@"big.jpg"];
//
// // 设置frame
// imageView.frame = CGRectMake(0, 0, imageView.image.size.width, imageView.image.size.height);
[scrollView addSubview:_imageView];
// 设置内容范围
scrollView.contentSize = image.size;
// 设置scrollview的代理对象
scrollView.delegate = self;
// 设置最大伸缩比例
scrollView.maximumZoomScale = 2.0;
// 设置最小伸缩比例
scrollView.minimumZoomScale = 0.2;
}
#pragma mark - UIScrollView 的 代理方法
#pragma mark 这个方法返回的控件就能进行捏合手势缩放操作
#pragma mark 当UIScrollView尝试进行缩放的时候就会调用
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
return _imageView;
}
#pragma mark 当缩放完毕的时候调用
- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale
{
// NSLog(@"结束缩放 - %f", scale);
}
#pragma mark 当正在缩放的时候调用
- (void)scrollViewDidZoom:(UIScrollView *)scrollView
{
// NSLog(@"-----");
}
@end
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |