ipad实现ScrollView通过手势滚动和缩放的Image

在ipad上预览一张图片的时候,如果我们希望能够够缩放和滚动(类似与google地图效果),需要使用ScrollView

-------视图控制器定义如下

@interface TestBedViewController : UIViewController <UIScrollViewDelegate>

{

UIImage *weathermap;

}

@property (retainUIImage *weathermap;

@end


@implementation TestBedViewController

@synthesize weathermap;

//在通过缩放手势的时候制定,所有ScrollView中的Image

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView

{

return [self.view viewWithTag:201];

}


/*

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale

{

}

*/


- (void) viewDidLoad

{

// 创建滚动视图并设置大小和代理对象                                                        px    py   宽度 高度

UIScrollView *sv = [[[UIScrollView allocinitWithFrame:CGRectMake(0.0f0.0f320.0f284.0f)] autorelease];

sv.contentSize = self.weathermap.size;//要缩放的UIImage对象

sv.delegate = self; //设定代理对象

// 创建图片对象

UIImageView *iv = [[[UIImageView allocinitWithImage:self.weathermapautorelease];

iv.userInteractionEnabled = YES;

iv.tag = 201;

// 计算缩放数值

float minzoomx = sv.frame.size.width / self.weathermap.size.width;

float minzoomy = sv.frame.size.height / self.weathermap.size.height;

sv.minimumZoomScale = MIN(minzoomx, minzoomy);  //最小缩放到当前ScrollView的大小比例

sv.maximumZoomScale = 3.0f; //最大缩放到图片的3倍


// 在scorllView添加image

[sv addSubview:iv];

[self.view addSubview:sv];

}

@end



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值