2012-05-17 11 views
6

estoy usando UIImagePickerController para tomar la imagen. Estoy utilizando el siguiente código:UIImagePickerController me da una vista previa del negro

UIImagePickerController* UIPicker = [[UIImagePickerController alloc] init]; 
UIPicker.delegate = self; 
UIPicker.sourceType= UIImagePickerControllerSourceTypeCamera; 
[UIPicker setCameraCaptureMode:UIImagePickerControllerCameraCaptureModePhoto]; 
UIPicker.allowsEditing=NO; 
[self presentModalViewController:UIPicker animated:YES]; 
[UIPicker release]; 

El problema es que al azar me estoy haciendo la vista previa como una pantalla en negro, si sucede una vez y luego nunca se restablece hasta que matemos y reinicie la aplicación.

Estoy obteniendo la imagen correcta de UIImagePickerControllerDelegate pero tengo este problema con la vista previa cuando UIImagePickerController tiene la cámara como tipo de fuente.

Respuesta

0

Si sucede al azar, no creo que se trata de un problema de memoria. La imagen de UIImagePickerController es bastante grande. Si logra manipular la imagen de alguna manera, su memoria podría no ser capaz de soportar eso.

0

me encontré con este mismo problema con la vista previa de la cámara esta noche, y la causa raíz del problema fue ... completamente de código relacionado en el delegado de la aplicación que modifica la interfaz de usuario en una cola en segundo plano.

Al parecer, no se necesita mucho para perturbar las variables internas frágiles que se basa en AVFoundation.

Una vez que eliminé las llamadas a código de interfaz de usuario de las colas de fondo, la vista previa de la cámara se convirtió rápido y fiable.

este artículo (http://www.cocoanetics.com/2013/02/uiview-background-queue-debugging/) fue muy útil en la búsqueda de la interfaz de usuario, donde se está modificando de una cola de fondo.

También recomiendo que revise la respuesta a esta pregunta (iOS 7 UIImagePickerController has black preview)

Cuestiones relacionadas