2009-10-08 7 views
2

rejetant je le code suivant:UIImagePickerController

SecondViewController *secondView = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil]; 

[imagePicker setSourceType:UIImagePickerControllerSourceTypeCamera]; 
[imagePicker setCameraOverlayView:secondView.view]; 
[imagePicker setShowsCameraControls:NO]; 

[self presentModalViewController:imagePicker animated:YES]; 

Ma question est: Comment puis-je rejeter la ModalViewController de "SecondViewController"?

Répondre

10

Vous devez appeler ce qui suit sur imagePicker à partir d'une méthode UIImagePickerControllerDelegate dans secondView.

Par exemple:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
    // process message 
    [imagePicker dismissModalViewControllerAnimated:YES]; 
} 
+0

presque; secondView.view est la superposition, pas le délégué. Vous devez également définir le délégué du sélecteur d'images sur secondView. –

+0

* sidenote: * 'rejectModalViewControllerAnimated:' est maintenant obsolète dans iOS6 – Raptor

1

La réponse acceptée ne fonctionne plus dans iOS 7. Voici la méthode qui devrait être utilisée à la place.

Encore une fois, cette méthode doit être appelée sur le UIImagePicker à partir du UIImagePickerControllerDelegate.

-(void) imagePickerController:(UIImagePickerController *)picker 
      didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
    [[picker presentingViewController] dismissViewControllerAnimated:YES completion:NULL]; 

} 
Questions connexes