2013-03-05 139 views
-4

我是iphone的新手我正在使用scrollview自动滚动图像的项目也与我一起,我必须做放大和缩小image.Is这可能吗?如果是的话可以怎么做。请给我推荐一些代码。在iphone中缩放图像的自动滚动

谢谢。

回答

1
- (void)viewDidLoad 
{ 
[super viewDidLoad]; 

// 1 
    UIImage *image = [UIImage imageNamed:@"photo1.png"]; 
    self.imageView = [[UIImageView alloc] initWithImage:image]; 
    self.imageView.frame = (CGRect){.origin=CGPointMake(0.0f, 0.0f), .size=image.size}; 
    [self.scrollView addSubview:self.imageView]; 

// 2 
    self.scrollView.contentSize = image.size; 
    } 

viewDidLoad中

  1. 首先,您需要创建您添加到您的项目photo1.png图像的图像查看和设置图像视图帧(它的大小 和位置),因此它是图像的大小,并位于父级内的点0,0, 。最后,图像视图被添加为您的滚动视图的子视图 。

  2. 你必须告诉你的滚动视图它包含的内容的大小,以便它知道它可以在多大程度上滚动 水平和垂直。在这种情况下,它是图像的大小。

- (void)viewWillAppear:(BOOL)animated { 
[super viewWillAppear:animated]; 

// 1 
CGRect scrollViewFrame = self.scrollView.frame; 
CGFloat scaleWidth = scrollViewFrame.size.width/self.scrollView.contentSize.width; 
CGFloat scaleHeight = scrollViewFrame.size.height/self.scrollView.contentSize.height; 
CGFloat minScale = MIN(scaleWidth, scaleHeight); 
self.scrollView.minimumZoomScale = minScale; 

// 2 
self.scrollView.maximumZoomScale = 1.0f; 
self.scrollView.zoomScale = minScale; 

}

viewWillAppear中

  1. 接下来,你需要制定出最低缩放比例滚动视图。缩放比例为1表示内容以正常尺寸显示在 。小于1的缩放比例显示缩小的内容, ,而大于1的缩放比例显示放大的内容。

  2. 您将最大缩放比例设置为1,因为放大的图像分辨率可能超过图像的分辨率会导致它看起来模糊。您将 设置为最小的初始缩放比例,以便图像开始 完全缩小。