当使用 UIImagePickerController
时,您可能已经注意到,默认情况下,由前置摄像头拍摄的图片是镜像的。
即使你在代理中反转拍摄的照片,UIImagePickerController
显示的预览图片仍然是镜像的,这会给用户带来奇怪的经验。
请看以下 UIImagePickerController
默认前置摄像头照片的示例
现在与 LEMirroredImagePicker 一起使用
将 LEMirroredImagePicker 文件夹中的两个文件拖拽并复制到您的项目中,或者将其添加为 git 子模块。
LEMirroredImagePicker
非常容易使用。您需要做的就是调用以下两行代码
#import "LEMirroredImagePicker.h"
(..)
@property(nonatomic) LEMirroredImagePicker *mirrorFrontPicker;
(..)
self.mirrorFrontPicker = [[LEMirroredImagePicker alloc] initWithImagePicker:pickerController];
[self.mirrorFrontPicker mirrorFrontCamera];
(..)
就这样。现在,在预览中显示的前置摄像头拍摄的照片将与相机中看到的相同。以下是一个使用 UIImagePickerController
的完整示例
UIImagePickerController *pickerController = [UIImagePickerController new];
pickerController.delegate = self;
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
pickerController.sourceType = UIImagePickerControllerSourceTypeCamera;
pickerController.cameraDevice = UIImagePickerControllerCameraDeviceFront;
}
else
{
pickerController.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
}
self.mirrorFrontPicker = [[LEMirroredImagePicker alloc] initWithImagePicker:pickerController];
[self.mirrorFrontPicker mirrorFrontCamera];
[self presentViewController:pickerController animated:YES completion:nil];
喜欢这个项目吗?有没有什么缺失的或者可以改进的地方?请随意贡献 :)
分叉它
创建您的分支 git checkout -b name-your-feature
提交它 git commit -m 'the difference'
推送它 git push origin name-your-feature
创建一个 Pull Request
Lucas Eduardo,[[email protected]]
LEMirroredImagePicker 在 MIT 许可协议下可用。有关更多信息,请参阅 LICENSE 文件。