编辑:这是UIImagePicker allowsEditing stuck in center的完全重复,但这似乎是完全不同的问题。这个问题与用户无法移动裁剪框有关(具有额外的怪异,它只发生在相机上)。这个问题是关于图像选择器将错误的值返回到我的代码中。
我的UIImagePickerController
上有info[UIImagePickerControllerEditedImage]
,因此可以裁剪图片:
open
中出现的图像总是看起来正常并被裁剪,但就好像裁剪窗口向上滑了~10%:
你可以看到上面的裁剪窗口穿过了叶子的中脉,但是在拾取器的输出中,中脉完全可见。
有谁熟悉这种行为?
答案 0 :(得分:1)
是的,我遇到过同样的问题,现在有了解决方案,您为什么它的图像占图像的-10%?因为状态栏显示在项目中,所以它会包含其高度,您需要通过以下方法隐藏它,您将获得准确的结果。
func navigationController(_ navigationController: UINavigationController, didShow viewController: UIViewController, animated: Bool) {
UIApplication.shared.isStatusBarHidden = true
}
答案 1 :(得分:1)
状态栏正像Nirav Bhavsar所说的那样弄糟。
他的解决方案对我不起作用,但是添加以下扩展名可以使UIImagePickerControllerEditedImage
正确裁剪图像。
extension UIImagePickerController {
open override var childViewControllerForStatusBarHidden: UIViewController? {
return nil
}
open override var prefersStatusBarHidden: Bool {
return true
}
}
此扩展程序将状态栏隐藏在UIImagePickerController
中,看起来有些怪异,但结果很重要。
我从Swift 3.0 - how to hide status bar after calling UIImagePickerController?那里得到了