环境:
我的应用的第一个视图控制器是PostsViewController
。在viewDidLoad
中,我检查用户是否已登录,如果不是,则以模态方式预设SignupVC
。当然可以选择登录而不是注册,我想用登录VC替换注册VC。
我尝试制作一个"显示细节(替换)"从注册到登录VC,但这似乎在注册VC上提供登录模式。它的问题是在用户登录后,我有两个模式要关闭,同时关闭它们似乎很棘手。理想情况下,我想用登录VC替换注册VC,只关闭一个模态。
Q1。 show detail
segue在应用于模态视图控制器时如何工作present modally
segue?
Q2。如何使用登录View控制器替换SignUp View控制器?
答案 0 :(得分:3)
正确地重读了你的问题和你的评论之后,很清楚你在这里要做什么。
Q1:因为您只能在显示viewController
的父/子视图上显示modally
modally
。您无法将新viewController
推送到modally
呈现viewController
。为了推送viewController
,您需要在视图层次结构中UINavigationController
(通常是父/根视图)
Q2:您需要从signupVC以模态方式呈现它。
示例:
//Somewhere in SingupVC
[self presentViewController:LoginVC animated:YES completion:nil];
修改强>
在评论中回答你的问题:
没有办法同时解雇两个VC。
然而,有几种方法可以做到这一点:
您可以在显示boolean
的{{1}}上设置SingupVC
标记。这样,当LoginVC
上调用viewWill/Did appear
并且singupVC
标记设置为boolean
时,您可以调用:YES
这两种风险投资都被解雇了。一个用户通过后退按钮解析[self dismissViewControllerAnimated:NO completion:nil];
而LoginVC
通过其中一个视图生命周期方法(如果loginVCPresent)中的if语句解除视图,事物的类型。