2011-04-12 18 views
6

quiero fijar mi UIModalPresentationFormSheet estilo de vista modal para convertirse en UIModalPresentationFullScreen estilo en algún momento, pero cuando ya está mostrado con UIModalPresentationFormSheet estilo, no puede Goto pantalla completa usando el código "[xx setModalPresentationStyle:UIModalPresentationFullScreen];"¿Cómo cambiar el modalPresentationStyle cuando ya se muestra el controlador de vista modal?

¿Hay una manera de cambiar el estilo actual después de una vista modal que se muestra? Mi código como este:

UITableDownload* vc = [[UITableDownload alloc] initWithStyle:UITableViewStylePlain]; 
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc]; 
[nav setModalPresentationStyle:UIModalPresentationFormSheet]; 
[MainAppDelegate mainBrowserViewController] presentModalViewController:nav animated:YES]; 

...//after shown,sometime I implement following code: 
[nav setModalPresentationStyle:UIModalPresentationFullScreen];//(The "nav" object is the same as above code) 
//But the change style code takes no effect. 

Respuesta

0

No estoy seguro de si esta es la respuesta o no, pero ¿ha intentado acceder al controlador a través del modalViewController?

Algo así como:

[self.modalViewController setModalPresentationStyle:UIModalPresentationFullScreen]; 

en lugar de la:

[nav setModalPresentationStyle:UIModalPresentationFullScreen]; 
+0

esto no tendrá ningún efecto en absoluto – jyavenard

0

creo, se puede tratar de cambiar modalpresentationStyle como UIModalPresentationPageSheet

[nav setModalPresentationStyle:UIModalPresentationPageSheet]; 

Este tipo debe autorotate su punto de vista modal

0

Esta es todavía una pregunta para mí en una aplicación para iOS 7 y en este momento me queda la conclusión de que cambiar el modalPresentationStyle después de la transición no tiene ningún efecto.