2013-01-14 71 views
5

我正试图创建一个图像查看器,其行为完全像苹果照片应用程序。但现在我只对单个图像行为感兴趣。放大时UIScrollView与UIImageView居中旋转?

我已经在UIScrollView中放置了一个UIImageView,并且设法处理了一件事旁边的所有事情,那就是如果我放大图像的一部分(例如一幅肖像图像),然后旋转横向设备该部分似乎在左上角而不是中心上旋转。

让我试着说明一下。这是我现在有:

What I have

这是我想发生:

What I want

基本上我相信我知道我怎么能做到这一点,但它似乎涉及多一点编码比它可能值得的。也许我错过了一些简单的属性,我可以设置它来获得所需的行为。

任何提示,任何人?

+1

您是否尝试将中心点设置为旋转视图的中心点?这对我来说也是一个锚定问题。确保'UIImageView'锚定在顶部*和*底部。希望有助于! – msgambel

+0

我不知道中心属性现在会尝试。另一方面,我不知道我将如何锚定UIImageView我只看到UIImageView图层有一个CGPoint的anchorPoint属性,但我不太确定你的意思? –

+0

我打算把它固定在笔尖上。 – msgambel

回答

0
self.imageView.center = self.scrollView.center; 
+0

你会把这个放在哪里?我在layoutSubviews的结尾尝试过,但它运行起来很笨拙,并且只有在用户放大到死点时才行(因为layoutSubviews在每次缩放级别更改时都会被调用,所以它实际上会中断用户甚至能够缩放其他地方)。可能不是正确的地方叫它...也许imageView.center不应该被设置为scrollView中心,但缩放区域中心?...还没有尝试过那一个......任何建议? –

+0

scrollViewDidFinishingZooming也许?同样是的,你可能想把它放在放大的区域中。 –

+0

试过了。由于某种原因没有工作......它似乎是一个合乎逻辑的地方。我不知道为什么它不工作... –

0

do set [imgView setContentMode:UIViewContentModeScaleAspectFit];