我是iOS编程的新手,现在我正在使用AVFoundation编写相机应用程序。我的问题是我必须预览刚拍摄全屏尺寸的图像,但不管我怎么试,我只是在手机上显示全屏尺寸的剪裁图像(原始图像的左上角比例)。我拍摄的图像是1920 * 1080 res,我的UIImageView设置为AspectFit,在故事板上,它以全屏尺寸显示。
显示图像的代码如,
[self.imageView setFrame:self.view.bounds];
[self.imageView setContentMode:UIViewContentModeScaleAspectFit] ;
[self.imageView setImage:image] ;
[self.view insertSubview:_imageView aboveSubview:_previewView] ;
[self.view bringSubviewToFront:_stillButton] ;
[self.view bringSubviewToFront:_maskButton] ;
[self.view bringSubviewToFront:_confirmButton] ;
当我观察UIImageView对象self.imageView的大小时,大小不是屏幕尺寸,而是320 * 568。然而,预览视图是一个AVFoundation相机拍摄预览对象,它也是320 * 568,但看起来预览视图大小是正确的从正在运行的应用程序。最后,self.view.frame.size也是320 * 568。
所以我的问题是如何在全屏尺寸下观看以1920 * 1080拍摄的图像?
答案 0 :(得分:0)
试试这个:
imageView.contentMode = UIViewContentModeCenter