当我将UITableView作为可见视图控制器的一部分时,如何重新加载它以便我正在查看的数据会更改为新数据。在我滚动它之前,只是调用reload似乎不会刷新数据。
答案 0 :(得分:35)
调用方法后,调用reloadData
方法会刷新数据。它不等待表格滚动。在致电reloadData
之前,请确保更改了数据源(数组或字典或您保存值的位置)。
答案 1 :(得分:33)
您是否刷新了主线程中的数据?如果是这样,您需要使用以下方法调用reloadData方法:
- (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wait
因此对于tableView,它将是:
[tableView performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:NO];
答案 2 :(得分:20)
只需2013年更新,您也应该能够重新加载数据,只要您使用
dispatch_async(dispatch_get_main_queue(), ^{
[self.tableView reloadData];
});
GCD太棒了!
答案 3 :(得分:-5)
以下代码可帮助您在查看时重新加载表:
[self.tableView reloadData];