30

当我有一个 UITableView 作为可见视图控制器的一部分时,我如何重新加载它,以便我正在查看的数据更改为新数据。只是调用 reload 似乎不会刷新数据,直到我滚动它。

4

4 回答 4

35

reloadData只要调用该方法,调用该方法就会刷新数据。它不会等待表格滚动。在调用reloadData.

于 2009-03-19T04:17:44.820 回答
33

您是否正在刷新主线程中的数据?如果是这样,您需要使用以下方法调用 reloadData 方法:

- (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wait

所以对于 tableView 它将是:

[tableView performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:NO];

于 2010-08-06T08:30:14.263 回答
20

只是2013的更新,应该也可以重新加载数据,只要你用

dispatch_async(dispatch_get_main_queue(), ^{
    [self.tableView reloadData];
});

GCD真棒!

于 2013-05-20T20:49:02.017 回答
-5

以下代码可帮助您在查看时重新加载表:

[self.tableView reloadData];
于 2014-03-19T05:25:51.957 回答