viewDidDisappear no se llama cuando se usa presentViewController

Yo tengo unUIViewController teniendo este método:

- (void)viewWillDisappear:(BOOL)animated {
    [super viewWillDisappear:animated];
    NSLog(@"DISAPPEAR");
    lastKnownOrientation = [self interfaceOrientation];
}


-(void)openSendVC{
    SendMsgViewController *vc = [[SendMsgViewController alloc]initWithNibName:@"SendMsgViewController" bundle:nil];
    [self.navigationController pushViewController:vc animated:NO];  
}

En el segundo controlador de vista SendMsgViewController) viewDidLoad Tengo lo siguiente:

[self presentViewController:picker animated:YES completion:NULL];

where selector es unUIImageViewPicker.

l problema es que cuando llamo al métodoopenSendVC se abre un nuevo controlador, peroviewWillDisappear (de la primera viewController) no se llama.

Respuestas a la pregunta(2)

Su respuesta a la pregunta