0

我的应用程序有一系列基于一些分层数据的表视图。例如,用户在我的 CategoryListController 上选择“按 XYZ 浏览”,然后我根据该选择加载我的 DocumentListController。

现在我正在通过一个返回一些 JSON 数据的 Web 服务获取列表,但这不是重点。我可以从 SQLite 数据库中检索这个动态列表,我将面临同样的潜在挑战。

这里的问题是,由于 DocumentListController 中我的表视图的项目列表将根据用户点击的选择而改变,因此我必须在显示表视图后加载我的列表。

现在,我正在使用-viewWillAppear:从我的 Web 服务触发数据项的“刷新”。我想知道这是否是进行此刷新的最佳方式,或者我是否应该考虑使用不同的方法。我尝试使用-viewDidLoad,但该方法只为 DocumentListController 调用一次,并且我必须在每次调用时检查“选择”是否已更改,如果是,我需要再次调用我的 Web 服务。

做这样的事情的最好方法是什么?

4

1 回答 1

0

由于您通过网络检索数据,我建议您在处理后发布通知。您的 DocumentListController 应该注册该通知并在通知处理程序中调用其表视图的 reloadData。

另一种方法,如果在显示视图时数据将始终存在,那就是您所建议的 - 在 vi​​ewWillAppear 中更新表视图。

于 2008-11-27T14:16:50.713 回答