0

查看开始 iOS 5 中用于持久化应用程序状态的示例,在为应用程序显示的第一个 viewController 中,它们applicationWillResignActiveviewDidLoad:. 所以这对我来说很有意义,因为您在显示第一个视图时注册该通知。

我对您是否总是这样做,或者您通常在哪里注册此通知感到困惑。Q1) 他们是否在这个 viewController 中注册了这个通知,以便他们可以重新创建这个视图?Q2)如果是这样,我是否为每个 viewController 都这样做?

Q3) 我正在使用 UIStoryboard,我的第一个 viewController 是 UITabBarController。那么我要在第一个选项卡的 viewController 中注册通知吗?

我还有一个单独的 DataManager 对象,它保存应用程序的数据,如果这可以帮助任何人指导我正确的方向,我应该保存我的数据。谢谢!

4

1 回答 1

0

这些方法在 AppDelegate.m

- (void)applicationWillResignActive:(UIApplication *)application
{
    /*
     Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
     Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
     */
}

您可以在此处执行您的操作。但是,您可以在另一个视图控制器(如您的示例)中注册以“监听”该事件,但这只是为了更容易将该事件通知发送到该视图控制器。

1) 不,只是为了确保无论何时加载此 VC,它都能够侦听此事件。

2)不,仅适用于您想像这样轻松通过的人。然而,使用 appdelegate.m 并且每个的 vc 视图确实出现了更好。

3) depends on the kind of data you want to save, but typically you create your own file and just save it to disk like in any other OS. ios gives you access to the "documents" folder of your app and each folder is used for something specific, read the documentation.

于 2012-06-06T00:12:39.410 回答