2012-05-30 12 views
5

Desidero che la mia app utilizzi solo la fotocamera frontale. Quindi ho implementato il seguente codice.UIImageViewController cameraDevice non viene utilizzato ogni volta che si apre la telecamera

if ([UIImagePickerControllerisCameraDeviceAvailable:UIImagePickerControllerCameraDeviceFront]) { 
    self.imagePickerController.cameraDevice = UIImagePickerControllerCameraDeviceFront; 
} 

Questo funziona la prima volta che apro la fotocamera (sta utilizzando la fotocamera frontale). Ma se annullo la foto e poi rientro nella fotocamera, viene utilizzata la fotocamera posteriore.

Con ogni annullare/ri-entrare in macchina si passa tra le telecamere anteriore e posteriore ...

C'è qualcosa che mi manca?

risposta

0
Tr this code .I used this code and it is working fine .Use this code either in button action or viewwillappear or viewdidload and dismiss the camera view properly 
    imgPicker =[[UIImagePickerController alloc] init]; 
    imgPicker.sourceType = UIImagePickerControllerSourceTypeCamera; 
    imgPicker.cameraDevice=UIImagePickerControllerCameraDeviceFront; 
    imgPicker.showsCameraControls = YES; 
    imgPicker.allowsEditing = YES; 
    imgPicker.delegate=self; 
    [self presentViewController:imgPicker 
         animated:NO completion:nil]; 
+0

funziona come un fascino – Ruban

0

ho avuto lo stesso problema e risolto il problema nel mio caso includendo autorelease sulla chiamata di destinare l'UIImagePickerController come mostrato qui

UIImagePickerController * CameraUI = [[[UIImagePickerController alloc] init] autorelease];

+1

Non riesco a eseguire l'autorelease poiché utilizzo ARC. – TrentEllingsen

Problemi correlati