2010-05-27 4 views
5

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

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» вызывается - и я не возвращаю изображение.

Любая идея? Я искал в Интернете с высоким и низким, ...

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


Участок сгущается ...

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

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

2010-06-03 08: 16: 06,759 uPrintMobile [98412: 207] * Нагрузочный приложение из-за неперехваченного исключением 'NSInvalidArgumentException', причина: '* - [NSCFDictionary SetObject: forKey]: попытка вставить значение ноль (ключ: UIImagePickerControllerOriginalImage)'

Все еще нет подсказки ...

+0

ИМЕЕМ U GOT ЛЮБОЕ РЕШЕНИЕ ДЛЯ ЭТОГО PART.I также получил пораженный здесь .please помочь, если вы получили решение – Christina

+0

Кристина, какая версия Xcode/ИОС вы с помощью? – Reuven

+0

Привет, это тот же случай для меня. Протестировано с iPad SIMULATOR 5.0.5.1.6.0, все дали OrigninalImage и/или EditedImage как nil.Only iPad SIM 4.3 работает нормально. На устройстве мой iPad работает 5.1.1, и он работает. Поэтому я угадываю ошибку в iPad sim и игнорирую ее. – GeneCode

ответ

2

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

я разместил полный ответ здесь:
didFinishPickingMediaWithInfo return nil photo

0

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

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