切换到另一个视图控制器后维护视图控制器数据

时间:2011-03-02 05:28:12

标签: iphone uiviewcontroller uitableview

我有一个视图控制器在表视图中维护圈数。如果我移动到另一个控制器并返回,我需要维护数据。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

我建议将数据移出视图控制器。这样,控制器可以根据需要多次(在加载/卸载时)附加/分离值,并且值将持续存在。

答案 1 :(得分:0)

我不太明白为什么你会丢失数据 - 我希望你的UIVieeController留在内存中。

但是,如果您想要从控制器范围中提取数据,可以将其放在具有全局范围的位置。 UIApplicatuonDelegate可以被应用程序对象图中的所有控制器访问,因此可以保存数据。

访问您的UIAppicationDelegate ...

[[UIApplication sharedApplication] delegate]

您需要在自定义UIApplicationDelegate中添加一个nee propety来存储圈数...

@property(atomic,retain) NSMutableDictionary lapTimes;

现在在你的单圈时间UIViewController(以及任何其他控制器)你可以使用...来获取对该属性的引用。

MyAppDelegate* appDelegate = (MyAppDelegate*)[[UIApplication sharedApplication] delegate];
NSMutableDictionary lapTimes = [appDelegate lapTimes];

如果您希望在应用程序的多次运行中持续存在并使用UITableViews,那么也可能需要投入一些时间来阅读有关Core Data的内容。