我是iPhone开发的新手。我在一个视图控制器中创建了一个表视图。我想重新加载表视图,以便能够显示之前在委托人中解析的内容。更多内容 reloadData
只重载单元格。它并不负责实际更新底层数据源。
例如,如果我从tableView:cellForRowAtIndexPath:中的一个数组中读取数据,我必须在调用reloadData之前改变数组的值。
我怎样才能做到这一点?
听起来你需要一个管理器类(或其他东西)来封装请求、下载、解析数据和更新模型对象的过程。
你可以使用委托来告诉视图控制器在你完成上述所有工作后重新加载。
如果你有一个委托方法,返回你需要在TableView中刷新的值,请执行以下操作。
- (void)didFetchData:(NSArray*)dataList
{
//Update the dataSource List that is used in the tableView
self.dataSourceList = [NSArray arrayWithArray:dataList];
//Now call the reload method to update the data.
[self.tableView reloadData];
}
注意:一定要确保你更新了dataSource对象,然后再调用 [tableView reloadData]