小编典典

Storyboard 中的 Modal 和 Push segue 有什么区别?

all

有人可以向我解释modalpushsegue 之间的确切区别是什么吗?

我知道当我们使用pushsegue 时,它​​会被添加到堆栈中,所以当我们继续使用push它时,它会一直占用内存?

有人可以告诉我这两个是如何实现的吗?

Modal可以通过简单地ctrl-click拖动到目的地来创建segues,但是当我这样做时push我的应用程序崩溃了。

我正在从一个按钮推到一个UINavigationControllerUIViewController.


阅读 58

收藏
2022-08-05

共1个答案

小编典典

推送 Segue 正在向导航堆栈添加另一个 VC。这假定发起推送的 VC 是添加到堆栈的 VC
所属的同一导航控制器的一部分。内存管理不是导航控制器和深度堆栈的问题。只要您处理可能从一个 VC 传递到另一个 VC
的对象,运行时就会处理导航堆栈。请参阅图像以获取视觉指示: 导航堆栈

模态 Segue 只是一个 VC 呈现另一个 VC 模态。VC 不必是导航控制器的一部分,并且以模态方式呈现的 VC 通常被认为是呈现(父)VC
的“子”。模态呈现的 VC 通常没有任何导航栏或标签栏。呈现的 VC 还负责解散它创建和呈现的模态 VC。

希望这可以帮助。

2022-08-05