iPad UIImagePicker в UIPopoverController выбирает только сохраненные изображения (не из альбома)? - PullRequest
5 голосов
/ 27 мая 2010

В моем приложении для iPad я позволяю пользователю выбрать изображение, используя следующий код:

UIImagePickerController* picker = [[UIImagePickerController alloc] init]; 
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; 
picker.delegate = self; 

UIPopoverController *popover = [[UIPopoverController alloc] initWithContentViewController:picker];
self.popoverController = popover;          
popoverController.delegate = self;
[popoverController presentPopoverFromRect:self.view.frame
                                   inView:self.view
                 permittedArrowDirections:UIPopoverArrowDirectionAny
                                 animated:YES];
[picker release];

(я настроил класс как UIPopoverControllerDelegate и UIImagePickerControllerDelegate, и я настроил обратные вызовы для обоих делегатов.)

Теперь странная вещь заключается в том, что если я выбираю изображение из фотоальбома «Сохраненные фотографии», вызывается мой метод обратного вызова «imagePickerController: didFinishPickingImage», и я получаю изображение, и все в порядке.

Но если я выберу изображение из любого из других альбомов, мой обратный вызов "imagePickerControllerDidCancel" будет вызван - и я не верну изображение.

Есть идеи? Я искал в Интернете высоко и низко ...

Спасибо, Реувен


Сюжет утолщается ...

При добавлении:
allowEditing = YES;

Я по-прежнему могу выбирать (и обрезать / масштабировать) изображения из альбома сохраненных фотографий, но при попытке использовать изображения из других альбомов происходит сбой iPad с отображением отладчика:

2010-06-03 08: 16: 06.759 uPrintMobile [98412: 207] * Завершение работы приложения из-за необработанного исключения «NSInvalidArgumentException», причина: '* - [NSCFDictionary setObject: forKey:]: попытка вставить нулевое значение (ключ: UIImagePickerControllerOriginalImage) '

Все еще не знаю ...

Ответы [ 2 ]

2 голосов
/ 16 ноября 2010

Я знаю, что это много месяцев спустя, но я боролся с той же проблемой и обнаружил, что, хотя он задавался здесь много раз, на него никогда не отвечали. Что ж, я рад сообщить, что я понял это, и поэтому я публикую его на несколько почти идентичных вопросов, которые возникают в первую очередь при поиске.

Я разместил полный ответ здесь:
didFinishPickingMediaWithInfo вернуть ноль фото

0 голосов
/ 15 ноября 2010

Попробуйте поиграть с другими вариантами UIImagePickerControllerSourceTypePhotoLibrary в вашем методе делегата, проверьте условие как

`if( image is from photo library ) {
   // do something
} else if ( image from saved albums ) {
   // do something
}`
...