我创建了一个带有自定义视图的相机覆盖图,我试图通过应用缩放和平移来全屏显示相机。它在iPhone 5中运行良好但在iPhone 5s中并不适用。我尝试了许多代码,但仍然没有发现问题。这是我的代码:
if ([[UIScreen mainScreen] bounds].size.height == 568) {
CGAffineTransform translate = CGAffineTransformMakeTranslation(0.0, 71.0);
CGAffineTransform scale = CGAffineTransformScale(translate, 1.333333, 1.333333);
imagePicker.cameraViewTransform = scale;
}
顺便说一句,我在iOS 7中进行测试。
感谢您的帮助。
答案 0 :(得分:0)
将此行代码放入您的自定义相机oveylay类中。它适用于iPhone5s。
CGSize screenSize = [[UIScreen mainScreen] bounds].size;
int heightOffset = 120;
float cameraAspectRatio = 4.0 / 3.0; //! Note: 4.0 and 4.0 works
float imageWidth = floorf(screenSize.width * cameraAspectRatio);
float scale = ceilf(((screenSize.height + heightOffset) / imageWidth) * 10.0) / 10.0;
self.imagePickerController.cameraViewTransform = CGAffineTransformMakeScale(scale, scale);