UIImagePickerController всегда фото 640x640 изображения - PullRequest
5 голосов
/ 23 января 2012

Когда я представляю UIImagePickerController в своем приложении для iPhone, он всегда имеет белый квадрат с рамкой вокруг него, и пользователь может увеличивать и уменьшать изображение и помещать его в белый квадрат.Что бы они ни помещали в белый квадрат, это то, что возвращается:

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

и всегда 640x640.

Почему пользователь не может выбрать целое изображение?Почему этот белый квадрат даже появляется?

Ответы [ 2 ]

5 голосов
/ 14 февраля 2012

Встроенное редактирование очень ограничено.Вот что говорит документация Apple :

Редактирование элементов управления Чтобы указать, должен ли интерфейс камеры предлагать пользовательские элементы управления для перемещения и масштабирования захваченного изображения,или для обрезки захваченного фильма установите для свойства allowsEditing значение YES (для предоставления элементов управления для редактирования) или NO.

При использовании встроенных элементов управления для редактирования контроллер средства выбора изображений применяет определенные параметры.,Для неподвижных изображений средство выбора обеспечивает квадратное кадрирование, а также максимальный размер в пикселях.Для фильмов средство выбора обеспечивает максимальную длину и разрешение фильма.Если вы хотите, чтобы пользователь мог редактировать полноразмерные медиафайлы или указать пользовательскую обрезку, необходимо предоставить собственный пользовательский интерфейс редактирования.

3 голосов
/ 23 января 2012

Убедитесь, что вы не включили редактирование для UIImagePickerController. Вам просто нужно это:

UIImagePickerController* imagePicker = [[UIImagePickerController alloc] init];
[imagePicker setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
[imagePicker setDelegate:self];
[controller presentModalViewController:imagePicker animated:YES];
[imagePicker release];
...