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 に答える