我有一个标签视图控制器,它有一个这样的按钮,当它被按下时会出现一个模态:
PostViewController *post = [[PostViewController alloc] init];
// [self.navigationController pushViewController:post animated:YES];
// Presentation
[self presentViewController:post animated:YES completion:nil];
当模态完成后,我想解雇它并推送一个新的视图控制器,如下所示:
ProfilesViewController *profile = [[ProfilesViewController alloc] init];
[self.navigationController pushViewController:profile animated:YES];
但我不能在后vc中做它的模态。我该怎么做?
答案 0 :(得分:7)
您可以尝试使用completionBlock
。
CompletionBlock
。
PostViewController *post = [[PostViewController alloc] init];
[con presentViewController:post animated:YES completion:^{
ProfilesViewController *profile = [[ProfilesViewController alloc] init];
[self.navigationController pushViewController:profile animated:YES];
}];
有关presentViewController:animated:completion:
Apple Doc
完成:演示完成后要执行的块。 该块没有返回值,不带参数。你可以 为此参数指定nil。
答案 1 :(得分:1)
使用嵌入在UINavigationController中的标签视图控制器? 如果还没有,你当然不能使用self.navigationController。