IBOutlet
,将用作登录按钮。它被发送到该按钮的函数,我想在那里进行处理,一旦完成,就向前推viewcontroller
。
我已经将登录按钮链接到视图控制器以继续前进。如何暂停该推送 segue 向前移动,直到应用程序完成其处理并告诉它向前移动?
不要将按钮直接链接到下一个视图控制器,而是创建一个从UIViewController
到下一个UIViewController
的常规 segue,并为该 segue 指定标识符,以便在视图控制器的 .m 中,您可以在准备好执行 segue 时使用 performSegueWithIdentifier:
。
要以这种方式连接视图控制器,请单击第一个UIViewController
下方的黑条,然后控制+从黄色按钮拖动到第二个UIViewController
。
然后要执行 segue 使用:
[self performSegueWithIdentifier:@"TheViewControllerIdentifier" sender:self];
在按钮的 IBAction 方法中(如果满足条件)。
不要将情节提要上的按钮直接链接到下一个 viewController,而是将其链接到一个IBAction
,您在其中放置登录代码,登录完成后,像这样
推送下一个视图控制器 [self.navigationController pushViewController:theNewViewController];
如果您不知道如何创建newViewController
请尝试:MyViewController newViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"theIdentifier"]
并且不要忘记将theIdentifier
添加到情节提要中的新视图控制器
您可以在控制器中使用以下方法
- (BOOL)shouldPerformSegueWithIdentifier:(NSString *)identifier sender:(id)sender
在此方法中,您可以进行自定义处理并指示是否要执行 segue