是否可以让UIImageView处理横向图像与纵向图像不同?
我会尝试解释,我ImageViewController
的{{1}}填满了整个屏幕。
在某些时候,用户启动UIImageView
并从相机胶卷中选择一张照片
然后我用该图片创建UIImagePickerController
的实例并将其推送
ImageViewController
问题是,如果图像处于横向模式,它仍会填满整个屏幕 我希望它看起来像iPhone照片应用程序如何呈现风景图像(在屏幕的中心,黑色背景)。
是否有在UIImageView中显示横向模式图像的方法?或者我是否需要根据图像方向设置imageView框架?
答案 0 :(得分:3)
设置一下:
imageView.contentMode = UIViewContentModeAspectFit;
它将保持和的比例适合屏幕,而不是填充它。
答案 1 :(得分:1)
您可能希望根据图片的比例更改UIImageView
的{{1}}属性。
所以在contentMode
:
viewDidLoad
并在用户切换到横向时更改该模式,例如在if (imageView.image.size.height > imageView.image.size.width) {
imageView.contentMode = UIViewContentModeAspectFill;
} else {
imageView.contentMode = UIViewContentModeAspectFit;
}
:
willAnimateRotationToInterfaceOrientation:duration:
注意:注意测试,但可能有效
答案 2 :(得分:0)
UIImageView *imgView;
imgView.contentMode = UIViewContentModeCenter;