Ios 取消并显示视图控制器-一种解释?
最近,我一直在阅读有关取消和显示视图控制器背后的概念。我已经能够接受从目标视图控制器中删除前一个视图控制器的想法,但是我找不到几个问题的答案,这些问题已经在我脑海中萦绕了很久Ios 取消并显示视图控制器-一种解释?,ios,viewcontroller,Ios,Viewcontroller,最近,我一直在阅读有关取消和显示视图控制器背后的概念。我已经能够接受从目标视图控制器中删除前一个视图控制器的想法,但是我找不到几个问题的答案,这些问题已经在我脑海中萦绕了很久 场景1:我有一个登录页面,在用户输入他们的凭据后,它执行到另一个视图控制器的切换。之后是否有必要关闭登录页面,或者没有理由关闭 场景2:我有两个普通视图控制器(VC1和VC2)。如果我执行到VC2的转换,是否需要关闭VC1 对于何时需要关闭视图控制器以及何时不需要关闭视图控制器,我主要感到困惑 如果有人能帮我澄清这些问
- 场景1:我有一个登录页面,在用户输入他们的凭据后,它执行到另一个视图控制器的切换。之后是否有必要关闭登录页面,或者没有理由关闭
- 场景2:我有两个普通视图控制器(VC1和VC2)。如果我执行到VC2的转换,是否需要关闭VC1
2) 第二个问题也是如此,当您从第一个控制器转到第二个控制器时,无需取消第一个,场景1:执行顺序后,它会在视图控制器之间切换[自动取消当前视图控制器并显示新的视图控制器]。 因此,没有理由关闭登录页面
场景2:不,您不需要关闭VC1。正如您所知,一旦用户登录,在用户注销之前,登录屏幕不会打开。所以您应该从堆栈中删除登录视图控制器,它不应该保留在内存中。对于此任务,不要直接执行segue,您应该更改根视图控制器。关于如何更改根视图控制器,关于stackoverflow有很多答案 如果有一个视图控制器,在大多数情况下只使用一次(如登录或设置等)-尤其是在使用完之后,返回到以前使用过的视图控制器是有意义的-最好是以模式显示它,并在完成后关闭它。在用户看不到视图控制器后,视图控制器的其余部分将保留在内存中,鉴于苹果创建了显示和取消视图控制器的方法,这是预期的行为
我的理解是,在Android世界中,情况并非如此——默认情况是,当出现新的视图控制器时,旧的视图控制器确实会消失。也许问一下这个问题会有所帮助-您是在堆叠控制器还是在它们之间切换?对于前者,您可能使用segues。在后一种情况下,可能不会。