我在想如何在我的应用程序中导航。但我有点迷路了。
我有一个UIViewController,它加载一些数据,然后在CollectionView中显示数据。然后我有另一个用于详细视图的UIViewController。然后我触发一个segue进入它,我传递数据等。

self.performSegueWithIdentifier("detailViewSeque", sender: nil)

但我迷失的部分是回到我的主视图,如果我只是触发另一个segue,然后它再次加载所有的数据/视图。数据已经加载了一次,我真的不想继续加载。
我觉得我做错了事情,有一些非常明显的方法来处理这种情况。
有人能告诉我正确的方向吗?

最佳答案

要重新表述您的需求,“我有一些数据需要保存在与视图控制器无关的地方”。
你有几个选择。你的目标基本上是把它储存在一个不会失去记忆的地方。
AppDelegate经常用于此目的,但Singleton变量也可以工作。
我会亲自创建一个singleton,比如

private let _CatPictureRetriever SharedInstance = CatPictureRetriever()

class CatPictureRetriever {
    static let sharedInstance = CatPictureRetriever()

    var catPictures : NSArray?;

    func gimmeCatPictures -> NSArray? {
        return catPictures
    }
}

现在你可以通过catpictureretrier在任何地方获取图片
var pictures = CatPictureRetriever.sharedInstance.gimmeCatPictures()

10-08 07:46