2010-05-27 17 views
5

En mi aplicación para iPad, estoy dejando que el usuario seleccione una imagen mediante el siguiente código:iPad UIImagePicker en UIPopoverController seleccionando solo las imágenes guardadas (no del álbum)?

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]; 

(He creado la clase para ser a la vez un UIPopoverControllerDelegate y una UIImagePickerControllerDelegate, y he configurar las devoluciones de llamada para ambos delegados)

Ahora, lo extraño es que si selecciono una imagen del álbum de fotos "Fotos guardadas", se llama a mi método de devolución de llamada "imagePickerController: didFinishPickingImage" y obtengo una imagen, y todo está bien.

Pero, si selecciono una imagen de cualquiera de los otros álbumes, se llama a mi devolución de llamada "imagePickerControllerDidCancel" y no recupero una imagen.

¿Alguna idea? He buscado en la web de alta y baja ...

Gracias, Reuven


La trama se complica ...

Al añadir:
allowsEditing = SI;

Todavía puedo seleccionar (y cultivo/escala) las imágenes del álbum de fotos guardadas - pero cuando se trata de usar imágenes de otros álbumes, el iPad se estrella con el depurador, mostrando:

2010-06-03 08: 16: 06,759 uPrintMobile [98412: 207] * terminación de aplicación debido a excepción no detectada 'NSInvalidArgumentException', razón: '* - [NSCFDictionary setObject: forKey:]: intento de insertar un valor nulo (clave: UIImagePickerControllerOriginalImage)'

Todavía no hay pista ...

+0

have u Tienes alguna solución para este PART.I también le cayó aquí .please ayudar si tienes la solución – Christina

+0

Christina, ¿qué versión de Xcode/ios que son ¿utilizando? – Reuven

+0

Hola, este es el mismo caso para mí también. Probado con iPad SIMULATOR 5.0.5.1.6.0 todos dieron a OrigninalImage y/o EditedImage como nil. Solo iPad SIM 4.3 funciona bien. En el dispositivo, mi iPad ejecuta 5.1.1 y FUNCIONA. Así que supongo que hay un error en el simulador de iPad y lo ignoro. – GeneCode

Respuesta

2

Sé que esto es muchos meses más tarde, pero tuve problemas con el mismo problema y encontraron que a pesar de que se le pidió aquí muchas veces, nunca fue contestada. Bueno, me alegra decir que lo descubrí y lo estoy publicando en algunas de las preguntas casi idénticas que aparecen primero en una búsqueda.

he publicado la respuesta completa aquí:
didFinishPickingMediaWithInfo return nil photo

0

Prueba a jugar alrededor de la othe Opciones r de UIImagePickerControllerSourceTypePhotoLibrary en su método de delegado, comprobar la condición como

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