UIImagePickerController拍照后,cameraOverlayView偏移了

12
当您为UIImagePickerController实现cameraOverlayView时,该视图会在拍摄照片时和照片拍摄完成后出现,让您有机会取消或重新拍摄照片。但问题是,如果您的cameraOverlayView位于照片预览区域之上,则当您拍摄照片并显示预览时,您所拍摄的照片将不再与cameraOverlayView对齐。整个照片预览面板已经向下移动了约50个点,而cameraOverlayView仍然保持在原地。这将导致在需要照片与视图完美对齐时出现问题。
如何调整它们以使两者完美对齐 - 在拍摄照片时以及拍摄完成后?
请注意,拍摄照片后整个预览区域被向下推。

我也遇到了同样的问题,并且已经在https://dev59.com/A4vda4cB1Zd3GeqPUAcR上提出了问题。你找到解决办法了吗? - boweidmann
@BogdanWeidmann 我没有这样做,最终我不得不通过AVFoundation自己完成所有事情。 - Jordan H
嗨Joey,你是否已经实现了照片库照片选择功能?你能否分享一下你是如何实现的步骤和代码呢?非常感谢你的时间! :) - boweidmann
1
看起来像是苹果的一个bug。我已经提交了一个radar,你可能想要复制它:http://www.openradar.me/30513073 - Ortwin Gentz
1个回答

1

我遇到了类似的问题,并想出了以下解决方法:

if (IPhone5 || IPhone5c || IPhone5s)
{
     imagePicker.cameraViewTransform = CGAffineTransformTranslate(imagePicker.cameraViewTransform, 0, 30);
}
else if (IPhone6 || IPhone6Plus)
{
     imagePicker.cameraViewTransform = CGAffineTransformTranslate(imagePicker.cameraViewTransform, 0, 44);
}

这样可以确保拍摄的照片与相机预览层(纵向方向)的中心大致相同。

这种工作需要改变照片质量。我有一个OCR,但如果我转换相机视图,它就无法工作了。:( - Vassily

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接