防止删除UIViewController

时间:2016-08-30 12:25:01

标签: ios swift viewcontroller

我正在创建一个应用程序,您可以在两个视图之间跳转,我不希望每次显示其中一个时都会生成两个新视图。因此,我将ViewA存储为ViewB中的参考,以后我可以再次提供ViewA

准备功能中的ViewA中 viewB.root = self

现在,当我尝试访问ViewA时,我得到了EXC_BAD_ACCESS Error。我发现这是因为ViewA卸载并被删除,所以我的引用就像是nil。

Any1有建议吗?

2 个答案:

答案 0 :(得分:0)

使用segue而不是使用另一个控制器的引用。

研究此链接,您将了解有关在不同View控制器之间导航的更多信息。

Navigation controller and Segue

答案 1 :(得分:0)

您可以缓存viewController

let cache = NSCache()
// get your viewController from cache  
let controller = cache.objectForKey(object) as? YourViewController
// store viewController into cache  
cache.setObject(controller, forKey: object)