当你打开一个应用程序,并再次按主屏幕,该应用程序显然是在后台。当您打开其他应用程序并等待一段时间时,我的应用程序的视图已被卸载(如UITableView
重新加载数据)。UIApplication类在后台退出
是否有某种通知或我如何知道我的应用是否即将发布其视图?它只是viewDidUnload
?
当你打开一个应用程序,并再次按主屏幕,该应用程序显然是在后台。当您打开其他应用程序并等待一段时间时,我的应用程序的视图已被卸载(如UITableView
重新加载数据)。UIApplication类在后台退出
是否有某种通知或我如何知道我的应用是否即将发布其视图?它只是viewDidUnload
?
这个环节应该有所帮助:iPhone Development - Simulate Memory Warning
基本上你收到一个内存警告和视图的部分得到了卸载。
不幸的是,当你的应用程序放在后台时,它被冻结,它不会收到事件。除非你要求的一些后台处理时间,并提供系统与后台处理任务到期处理程序:
backgroundTask_ = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
// Peform clean up work
// Mark the task now as invalid
[[UIApplication sharedApplication] endBackgroundTask:backgroundTask_];
backgroundTask_ = UIBackgroundTaskInvalid;
}];
在这种情况下,后处理时间的额外费用,数量不明的结束,到期处理程序将被调用。
一些很好的背景文档可以在这里找到App States and Multitasking。但即使如此,在清理方面你也无法做很多事情。
祝你好运