在没有导航控制器的情况下推送 UIViewController
Posted
技术标签:
【中文标题】在没有导航控制器的情况下推送 UIViewController【英文标题】:pushing UIViewController without Navigation Controller 【发布时间】:2013-06-22 12:48:50 【问题描述】:我正在使用该方法在 if 条件下推送另一个 UIViewController:
initViewController *MW = [initViewController alloc];
MW = [self.storyboard instantiateViewControllerWithIdentifier:@"init"];
[self.navigationController pushViewController:MW animated:YES];
现在我改变了我的架构,我刚刚移除了我的导航控制器。这就是为什么,由于没有 NavigationController 存在,这些步骤将不再帮助我。现在我如何在不按下按钮的情况下推动另一个 ViewController -(IBAction) 。我只是想在 Storyboard 中使用它。
问候。
【问题讨论】:
【参考方案1】:仅供参考:没有 UINavigationController 你不能推送到另一个 Controller 。您可以使用
生成控制器PresentViewController
[self presentViewController:objPortrit animated:YES completion:^ ];
例如:
initViewController *MW = [initViewController alloc];
MW = [self.storyboard instantiateViewControllerWithIdentifier:@"init"];
[self presentViewController:MW animated:YES completion:^
];
编辑:
For your comment :
使用 PresentViewController 生成 ViewController 后,您需要将其关闭以生成另一个 ViewController 。
你可以从这个中解脱出来,像这样在各自的 ViewController 中使用他的方法。 :
-(void)viewDidDisappear
[self dismissModalViewControllerAnimated:YES];
【讨论】:
非常感谢您的快速回答。它工作并处理了我所有的问题:D 一个问题刚刚出现 :) - 警告:尝试在以上是关于在没有导航控制器的情况下推送 UIViewController的主要内容,如果未能解决你的问题,请参考以下文章
如何在不使用导航控制器的情况下推送 UIViewController?