我在想如何在我的应用程序中导航。但我有点迷路了。
我有一个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()