2009-10-08 3 views
2
увольнении

У меня есть следующий код:UIImagePickerController

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

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

[self presentModalViewController:imagePicker animated:YES]; 

Мой вопрос: Как я могу уволить ModalViewController от «SecondViewController»?

ответ

10

imagePickerUIImagePickerControllerDelegatesecondView.

Например:

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

почти; secondView.view - это оверлей, а не делегат. Вам нужно будет также установить делегат для выбора изображений в secondView. –

+0

* sidenote: * 'rejectModalViewControllerAnimated:' теперь устарел в iOS6 – Raptor

1

Принятый ответ больше не работает в iOS7. Ниже приведен метод, который следует использовать вместо этого.

Опять же, этот метод следует называть UIImagePicker от UIImagePickerControllerDelegate.

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

}