2013-03-02 41 views
0

我对ipad和split view很新,但对iphone和核心数据非常熟悉。 我现在想知道什么时候实际保存所有更改,以避免更改丢失,并且不会经常调用保存上下文。SplitView和核心数据:何时更改/提交用户所做的更改

用户选择从主视图中,然后在详细视图中显示的控制器的项目。非常类似于iPhone。但在分割视图中,细节视图控制器只是保持可见状态,并且每次在主控中选择新的细节项时都会分配一个新的细节项。

问题:在此期间,用户可能已经更改了详细条目。何时保存这些?我可以对此做出反应? setDetailItem是一个很好的地方,可以在更新新的detailItem之前保存更改。精细。 但用户退出应用程序之前最后一项的更改是什么?

对一些复杂性添加到这个:我正在运行一个TabBar中几个拆分视图控制器。所以用户可以从一个标签栏切换到下一个标签栏。我想viewWillDisappear可能适合控制这些事件?我是否应该保存上次更改?它是否也被要求离开应用程序?

回答

2

setDetailItemviewWillDisappear声音对我好保存用户数据。

viewWillDisappear在应用程序进入后台时不会调用,但应用程序委托中的applicationDidEnterBackground被调用。 根据该文件,

...你应该使用这个方法来释放共享资源,保存用户数据, 无效计时器,并储存足够的应用程序状态 信息到你的应用程序恢复到其当前状态在 的情况下,它稍后终止。 ...

或者,您可以注册UIApplicationDidEnterBackgroundNotification

+0

这是转到背景的好处。谢谢。 – 2013-03-02 16:49:45