我有一个UITableView,可以从网络加载远程数据。我在viewWillAppear中有逻辑来处理根据状态更改和数据集的TTL在需要时刷新数据。这在应用程序“会话”中正常工作,但在用户将应用程序退出到后台并稍后将其直接还原到此视图时无效。
我发现当iOS4中应用程序恢复到前台时 - 视图中未调用viewWillAppear - 我完全可以理解为什么这是设计的。我应该利用另一个UIView委托吗?我在文档中没有发现任何内容。
由于在应用程序中可以使用willEnterForeground委托是处理从应用程序委托到视图的通知的最佳方法吗?我是否错过了一种更直接,更优雅的方式来捕捉UIView?
感谢您的任何提示。
答案 0 :(得分:16)
您对委托电话的说法是正确的,但对于您正在做的事情,我觉得您希望根据applicationDidBecomeActive:
和applicationWillResignActive:
这两种方法暂停和恢复您的网络活动在app delegate上。
在回答有关在UIView中捕获这些通知的更直接方式的问题时,如果您无法方便地访问应用委托,则可以UIApplicationDidBecomeActiveNotification
UIApplicationWillResignActiveNotification
和{{1}} }通过默认通知中心。这有点让你无法将app委托与你的观点联系起来。