0

我有一个带有UIModalPresentationPageSheet样式的 modalView,这个视图有一个 scrollView,并且在该 scrollView 内部有一个 mageView,以便我可以显示图像,并允许用户操作,例如缩放等。

在 viewDidLoad 这就是我设置所有内容的方式:

CGRect imgFrame = CGRectMake(0, 0, img.size.width, img.size.height);
imageView.frame = imgFrame;
[imageView setImage:img];

哪个工作正常,但我遇到的问题是,如果我在横向模式下有一个大于有点小的 modalView 大小的图像(由于 UIModalPresentationPageSheet 样式),它不会缩小和缩放,所以我可以看到整个东西,它只显示了图像的 2/3,为了看到更多,我必须实际缩小。

我已将 contentMode 设置为UIViewContentModeScaleAspectFit,但它仍然没有改变任何东西。

我错过了什么吗?

4

1 回答 1

0

根据当前方向,将图像视图的框架设置为具有屏幕尺寸的最大宽度和高度。

就像是:

CGRect imgFrame = CGRectMake(0, 0, min(320 ,img.size.width), min(480, img.size.height);

这将适用于 iPhone 上的纵向模式(iPad 不同)。当方向发生变化时,您必须重置该框架。

于 2011-08-05T16:24:30.123 回答