2012-04-16 10 views
8

Edición de una fotografía después de que haya sido tomada (el movimiento y su reducción) funciona bien en mi aplicación con esta línea:cameraOverlayView evita la edición con allowsEditing

[imagePicker setAllowsEditing:YES]; 

Pero si también utilizo un cameraOverlayView, el modo de edición doesn' t trabajo más. Aparece la pantalla, pero los gestos de panoramización y pellizco no hacen que pase nada.

estoy usando el controlador de imagen promedio selector:

UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init]; 

Y añadir una vista de superposición cámara, creado a partir de la visión de un controlador de vista personalizada:

CameraOverlayViewController *overlayController = [[CameraOverlayViewController alloc] init]; 
UIView *overlayView = overlayController.view; 
[imagePicker setCameraOverlayView:overlayView]; 

En IB, ese punto de vista es configurado para permitir la interacción del usuario y el toque múltiple, lo que le permite hacer zoom y enfocar mientras toma la fotografía. Pero una vez que se toma la fotografía y entra al modo de edición, no se puede desplazar ni pellizcar para mover o escalar la fotografía.

¿Qué me estoy perdiendo?

+0

Estoy viendo el mismo problema aquí. y también el botón de control de volumen (obturador) no funciona ni después de usar la plantilla – tom

+0

Use la increíble sugerencia de Billy, o http://stackoverflow.com/questions/17942444/uiimagepicker-cameraoverlayview-appears-on-retake-screen – Fattie

Respuesta

32

¿Su plantilla ocupa todo el espacio de la vista de la cámara? Si es así, los toques van a la superposición en lugar de la vista a continuación, incluso si tiene un fondo transparente.

Agregue este método a su vista de superposición e ignorará los toques para que se pasen a las vistas a continuación. (Usted está sustituyendo un método de UIView que detecta toques.)

- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event 
{ 
    return NO; 
} 

Nota: además de ese fantástico punta, es posible que también desee utilizar esta pieza de información, para quitar la vista de superposición, por lo esa etapa: UIImagePicker cameraOverlayView appears on Retake screen

+0

Esa era exactamente lo que estaba buscando. Gracias. –

+0

Gracias. Ya no estoy trabajando en esta función, por lo que no la he probado en mi propia aplicación, pero supongo que es una mierda. ¡Lo siento, lo extrañé antes! –

+0

Gracias, me ayudó mucho ... –

Cuestiones relacionadas