Модальное представление ModalViewController на iPad

Я вызываю этот код из MasterViewController в UISplitVC для приложения iPad:

-(void)viewWillAppear:(BOOL)animated{
//PRESENT MODALVC
ModalViewController *modalVC = [[ModalViewController alloc] initWithNibName:@"ModalViewController" bundle:nil];
[self setModalPresentationStyle:UIModalPresentationFullScreen];
[self presentModalViewController:modalVC animated:YES];

}

но это не работает. ModalVC не появляется.


person marciokoko    schedule 07.06.2012    source источник


Ответы (1)


Попробуйте этот код:

ModalViewController *modalVC = [[ModalViewController alloc] initWithNibName:@"ModalViewController" bundle:nil];
[modalVC setModalPresentationStyle:UIModalPresentationFullScreen]; //You set the presentation style of the controller that would be presented, not the presenting controller
//This check is needed, because presentModalViewController:animated is depreciated in iOS5.0 and presentViewController:animated:completion must be used instead. The same is valid for dismissModalViewControllerAnimated and dismissViewControllerAnimated:completion
if([self respondsToSelector:@selector(presentViewController:animated:completion:)])
    [self presentViewController:modalVC animated:YES completion:nil];
else
    [self presentModalViewController:modalVC animated:YES];

Если вы ориентируетесь только на iOS5.0+, эта проверка не требуется, и вы должны использовать только presentViewController:animated:completion и dismissViewControllerAnimated:completion

person graver    schedule 07.06.2012
comment
Привет @Graver, я представил modalView, он показывает нормально, теперь я нажимаю кнопку «Домой» и снова открываю приложение, что происходит, когда открывая приложение, оно закрывает modalView, который я оставил открытым, как предотвратить это - person Ranjit; 12.02.2014
comment
Вы должны делать это где-то. Ставьте точки останова везде, куда вы звоните: dismissModalViewControllerAnimated или dismissViewControllerAnimated и отлаживайте их. - person graver; 12.02.2014
comment
stackoverflow.com/questions/21726466/, Пожалуйста, проверьте это @Graver - person Ranjit; 12.02.2014