2012-07-18 43 views
2

我有一个UIScrollView包含UIImageView。 我需要放大我的UIImageView。下面不正确的框架使用缩放uiscrollview

我使用方法:

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

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView { 
    return imageView; // my UIImage about I describe here. 
} 

在viewDidLoad方法我设置帧为我UIImageView(例如NSRect: {{110, 180}, {100, 100}}

NSLog(@"image view frame %@", [NSValue valueWithCGRect:self.imageView.frame]); 
在这种情况下,注销该值

:图像视图帧NSRect: {{110, 180}, {100, 100}}

但是当我尝试把zoomView后的图像放到frame中时,我得到一个新的值,并且有下一个值:

{{9.9999971,9.9999971},{100.00001,100.00001}}

而且我不明白为什么我得到这个值9.9999971。我的意思是。是的,我知道,变焦后,我们改变我们的坐标,但是我不明白为什么我们得到的不是一个9.0f代替9.9999971,为什么不100.0图像缩放,而不是100.00001

回答

1

我已经实现演示代码你已经提到过。

  • (UIView的*)viewForZoomingInScrollView:(UIScrollView中*)滚动视图{ 返回imgZoom; }

我已经得到了我在视图中设置的imageview的值,并确实加载了。

我认为你做错了一些事情。

如果您可以分享更多,我可以告诉你详情。

谢谢

+0

嗨,感谢您的回复。所以我有两个部分检查CGRect UIImageView的值。所以,首先 - 我在viewDidLoad方法中输出值,并且在这个阶段我有正确的CGRect UIImageView值。在下一步我会用缩放方法做一些事情(例如增加缩放)。然后,我想检查CGRect UIImageViwe的新值,在这个阶段,我会得到奇怪的参数,例如{{9.9999971,9.9999971},{100.00001,100.00001}}等。但我想获得{{10.0,10.0},{100.0,100.0}}。 – 2012-09-17 12:28:06