我有UIActionSheet有3个选项 -
我使用UIImagePickerController,前两个选项没有问题。用户选择照片,然后可以缩放/移动到裁剪。
所以,我的问题是 - 如何将已保存的照片用于编辑(第3个选项)以及当前比例因子和帧。 F.e如果我选择“编辑照片”,我希望得到预览后我选择的相同照片“状态”。
这就是原生“联系”应用程序的工作原理!
答案 0 :(得分:1)
您需要访问委托方法中的UIImagePickerControllerEditedImage
对象:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImage *image = [info objectForKey:UIImagePickerControllerEditedImage];
if (!image) image = [info objectForKey:UIImagePickerControllerOriginalImage];
....
}
然后,您可以在自己的编辑视图控制器中使用此图像。 “联系人”应用程序以这种方式工作,因为它将编辑后的图像写回ALAsset
,这是一种破坏性的更改。为您的应用中的用户执行此操作可能是个坏主意,因此最好编写自己的编辑图像控制器,以处理已编辑的图像而不是UIImagePickerController
。 search on github显示了大量的开源回购,可以帮助您在这里进行裁剪。