UIImagePickerController允许编辑=是问题

时间:2010-12-07 13:57:58

标签: iphone objective-c user-interface uiimagepickercontroller

我仍然在使用uiimagepickercontroller这个问题。它应该是直截了当的,但我仍然无法弄明白。或者我可能走错了方向。

我调用imagepicker,以便用户可以从相机胶卷/相册中加载照片/从相机拍摄照片。这部分很好。

当我将allowsEditing设置为YES时变得奇怪。 didiFinishPickingMediaWithInfo委托返回一个NSDictionary *信息,其中包含editedImage和originalImage,即使用户没有裁剪选择器中显示的图像。所以问题是如何检测用户是否裁剪了图像?

我的应用程序需要的是用户可以根据需要裁剪图像,但他也可以选择不裁剪,从而返回原始照片。目前我正在使用分段控件供用户在加载照片前预先选择,我觉得这很不方便。也许有些用户不理解它。

那么如何在不给用户带来太多困难的情况下实现我的需求呢?

2 个答案:

答案 0 :(得分:3)

如果显示编辑控件,我非常确定您必须编辑图像。我不知道有什么方法可以摆脱这个广场。

但是,如果我错了,你可以比较他们的尺寸:

editedImage = [info objectForKey:UIImagePickerControllerEditedImage];
originalImage = [info objectForKey:UIImagePickerControllerOriginalImage];

if ((editedImage.size.width != originalImage.size.width) || (editedImage.size.height != originalImage.size.height)) {
    // The image has been edited
}

答案 1 :(得分:-1)

只需使用它..它将自动返回正确的图像,裁剪或未剪切......并且您仍然拥有所有信息:)

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)info
{