3

我有一个带有标签栏的应用程序,其中有几个带有用户生成内容的标签。当每个视图控制器加载时,viewDidLoad 方法向服务器发出 HTTP 请求以获取数据,然后相应地填充其视图。但是,一旦加载了所有数据,视图将保持不变(除非视图控制器被卸载并重新加载)。

许多具有用户生成内容的其他应用程序具有类似的行为,除了如果应用程序进入后台然后再次回到前台,每个视图都会重新加载。也就是说,当用户在应用程序处于活动状态时在各个选项卡之间切换时,内容不会自动刷新。如果用户“退出”应用程序,然后稍后再返回,视图将被重新加载。

是否有设计应用程序以这种方式运行的标准做法?具体来说,我想知道是否有 UIKit 细节可以利用来刷新我对应用程序“重新启动”的看法。

否则,我想一个简单的方法是让每个视图控制器在 viewDidLoad 中注册通知并监听进入前台的应用程序。然后控制器可以通过重新加载其数据来响应每个通知。

4

1 回答 1

5

在每个视图控制器中,您都希望订阅UIApplicationDidBecomeActiveNotification通知,并实现一个在收到通知时调用的方法。此方法将进行重新加载,但是您需要重新加载的数据确实超出了我们在这里可以回答的范围。这就是我的做法,也是我推荐的做法。

于 2010-09-14T19:38:40.290 回答