iPhone发布模态视图控制器是否也将控制器弹出到堆栈上?

时间:2012-04-23 16:28:12

标签: iphone uinavigationcontroller modalviewcontroller presentmodalviewcontroller

让我们假设您提供模态视图控制器(它是导航控制器)并推送到导航堆栈3-4视图控制器。解雇模态视图控制器也会从导航堆栈弹出这些控制器,还是会继续留在内存中?

我苹果医生说它在呈现多个模态视图控制器时,如果你解除根模式,其他所有将被解雇,但解雇动画只会发生一次。但是,没有提及,如果你在模态视图控制器上推动了一些控制器然后将其解除了怎么办。

2 个答案:

答案 0 :(得分:2)

当您关闭模态视图控制器时,它将从内存中释放。因此,除非您保留对它的引用,否则将删除所有内容,包括堆栈中的内部视图控制器。

但是,如果你确实保留了对它的引用,它将在被解雇时保持活着,从而保持其当前状态。下次出现时,就像你离开时一样。

答案 1 :(得分:1)

导航控制器包含在其中推送的视图控制器。因此,当导航控制器以模态方式呈现然后被解除时,它的(包含的)视图控制器堆栈也会被清除。