dismissModalViewController Oculta la vista principal detrás de la barra de estado

Tengo un problema muy extraño aquí. Estoy usando un controlador de vista modal actual para mostrar mi MFMailComposer ViewController encima de un ViewController que se coloca en una barra de navegación.

[self presentModalViewController:emailviewController animated:YES];

para ocultar, yo uso ...

-(void) mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error
{

    [self dismissModalViewControllerAnimated:YES];
}

Todo funciona bien, pero cuando descarto mi MailComposer, el controlador de vista original se oculta detrás de la barra de estado.

He intentado modificar el desplazamiento de la vista en 10 usando el método setFrame pero no funcionó. (esto es cansado antes y después de que el controlador de vista modal se presenta y se despide)

He intentado ocultar la barra de estado temporalmente pero no funcionó.

He intentado self.navigationcontroller presentmodalviewcontrolle pero eso tampoco funcionó ...

Cualquier idea o sugerencia sería altamente apreciada.

editado: la mayoría de las personas me dan una sugerencia para modificar el desplazamiento manualmente. Pues eso no funciona. Porque si lo hago en mi viewDidLoad / viewWillapper del método del controlador de vista original, cambia mi vista antes que el controlador de vista modal actual, mientras que después de cargar el controlador de vista modal se vuelve normal.

(void) viewDidAppear: (BOOL) animado {CGRect frame = self.navigationController.view.frame; marco.origen.y = 20; self.navigationController.view.frame = frame; }

Respuestas a la pregunta(1)

Su respuesta a la pregunta