我在 storyboard 中有一个应用程序,并通过故事板本身的推送操作与second view controller
建立连接(不使用编码)。
如果没有编写任何代码并使用故事板,有没有办法弹出first view controller
?
注意:通过使用navigation controller
我们将有back
按钮,但如果在第二个视图控制器中创建了一个按钮,当我们点击该按钮时,我们应该弹出到第一个视图控制器。
答案 0 :(得分:1)
故事板没有提供一种在没有编码的情况下从segue返回的方法,但是这可以通过以下代码轻松完成:
[self.navigationController popToRootViewControllerAnimated:YES];
答案 1 :(得分:0)
故事板不提供popViewController的“无代码”方式,您需要自己实现。
如果你想要弹出第一个viewController,你需要使用:
[self.navigationController popToRootViewControllerAnimated:YES];
答案 2 :(得分:0)
你可以使用UnwindSegue
以及iOS6,虽然它确实需要一些代码)*用于推送segues。有关UnwindSegues
的详细说明,请参阅SO post, scroll down to "In a Nutshell"
)*具体来说,您需要一个展开动作,例如
- (IBAction)unwindToThisViewController:(UIStoryboardSegue *)unwindSegue
答案 3 :(得分:0)
一种解决方案,包括编写一次代码,但之后可以在故事板中作为segue使用而无需进一步实现,这将是某种PopSegue作为UIStoryboardSegue的子类。
@interface PopSegue : UIStoryboardSegue
覆盖-perform方法,如下所示。
@implementation PopSegue
- (void)perform
{
[[self.sourceViewController navigationController] popViewControllerAnimated:YES];
}
@end
使用自定义segue进行反向导航并指定PopSegue类。