gpt4 book ai didi

ios - 是否可以在 UINavigationContoller 堆栈上推送 2 个单独的 UIViewController 实例

转载 作者:可可西里 更新时间:2023-11-01 00:39:45 25 4
gpt4 key购买 nike

我有一个具有多种用途的通用 UIViewController。它可以用 6 种不同的方式实例化,因为它被设计为非常通用。让我们将这个多用途 View Controller 称为 MultiPurposeViewController。

Type1VC = MultiPurposeViewController()// initiated differently
self.navigationController.push(Type1VC)

Type1VC 内部:

Type2VC = MultiPurposeViewController()// initiated differently than before
self.navigationController.push(Type2VC)

是否允许使用导航 Controller 进行操作?

编辑:

  • 这样的操作会导致内存问题吗?
  • 在处理 UINavigationController 堆栈时是否允许这样的操作?
  • 有没有人遇到过这样的场景,将相同的 UIViewContoller 的多个实例堆叠到 UINavigationController 堆栈上而没有任何内存泄漏?

最佳答案

从官方 Apple Doc 中清楚地提到:

To implement a navigation interface, you must decide what data to present at each level of your data hierarchy. For each level, you must provide a content view controller to manage and present the data at that level. If the presentation at multiple levels is the same, you can create multiple instances of the same view controller class and configure each one to manage its own set of data. For example, the Photos app has three distinct presentation types.

您可以通过以下阅读更多内容:https://developer.apple.com/library/content/documentation/WindowsViews/Conceptual/ViewControllerCatalog/Chapters/NavigationControllers.html

希望这能让您对您的问题有完整的了解。欢迎发表评论。

关于ios - 是否可以在 UINavigationContoller 堆栈上推送 2 个单独的 UIViewController 实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46062100/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com