Objective c 如何在UIIMagePickerController中设置自定义图像
我有3个选项的UIActionSheet-Objective c 如何在UIIMagePickerController中设置自定义图像,objective-c,ios,uiimage,uiimagepickercontroller,Objective C,Ios,Uiimage,Uiimagepickercontroller,我有3个选项的UIActionSheet- 拍照(从照相机) 从图书馆中选择 编辑照片(如果用户有个人资料图片) 我使用UIImagePickerController,前两个选项没有问题。用户选择照片,然后可以缩放/移动以裁剪照片 所以,我的问题是-如何将已保存的照片以当前比例因子和帧进行编辑(第三个选项)。 如果我选择“编辑照片”,我希望在预览后获得与我选择的相同的照片“状态” 这就是本地“联系人”应用程序的工作原理 您需要访问委托方法中的UIImagePickerControllerEdit
您需要访问委托方法中的
UIImagePickerControllerEditedImage
对象:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImage *image = [info objectForKey:UIImagePickerControllerEditedImage];
if (!image) image = [info objectForKey:UIImagePickerControllerOriginalImage];
....
}
然后,您可以在自己的“编辑视图”控制器中使用此图像。Contacts应用程序就是这样工作的,因为它会将编辑后的图像写回到
ALAsset
,这是一个破坏性的变化。对于应用程序中的用户来说,这样做可能不是一个好主意,因此最好编写自己的编辑图像控制器来处理编辑后的图像,而不是UIImagePickerController
。A显示了大量的开源回购协议,可以帮助您在这里进行裁剪。我想可能是一些本地员工,比如pickerController.originalImage=originalImage;和PickerController.croppedImage=croppedImage;运行编辑模式。