当我在我的iPhone应用程序中呈现UIImagePickerController时,它总是会出现一个白色正方形,周围有一个框架,用户可以放大和缩小图像并使其适合白色方块。无论它们适合白色方块,都归结为:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)img editingInfo:(NSDictionary *)info
它总是640x640。
为什么用户无法选择整个图像?为什么这个白色方块甚至会出现?
答案 0 :(得分:5)
内置编辑非常有限。以下是Apple documentation所说的内容:
编辑控件指定相机界面是否应提供 用户控制移动和缩放捕获的图片,或者用于 修剪捕获的电影,将
allowsEditing
属性设置为YES
(到 提供编辑控件)或NO
。使用内置编辑控件时,图像选择器控制器 强制执行某些选择。对于静止图像,选择器强制执行 方形裁剪以及最大像素尺寸。对于电影, 选择器强制执行最大电影长度和分辨率。如果你想 让用户编辑全尺寸媒体,或指定自定义裁剪 必须提供自己的编辑用户界面。
答案 1 :(得分:3)
确保您没有为UIImagePickerController启用编辑功能。 你只需要这个:
UIImagePickerController* imagePicker = [[UIImagePickerController alloc] init];
[imagePicker setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
[imagePicker setDelegate:self];
[controller presentModalViewController:imagePicker animated:YES];
[imagePicker release];