【发布时间】:2013-06-22 18:29:02
【问题描述】:
我正在在线下载一个包含文件内容的字符串,并将这些组件按字符串分隔成一个数组。
下载完成后,我将调用一个方法来更新我的 tableview 以显示这些值。
- (void)updateTableView {
tableView.delegate = self;
tableView.dataSource = self;
}
基本上在这个方法中我设置了委托和数据源,所以表格视图使用这个方法得到更新......
- (UITableViewCell *)tableView:(UITableView *)tView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [[UITableViewCell alloc] init];
cell.textLabel.text = [arrayDownloaded objectAtIndex:indexPath.row];
return cell;
}
但问题是表格视图在我“触摸”视图之前不会更新。
就像所有数据都已加载并且方法已被调用,但直到我点击屏幕上的任何位置时,表格视图才会更新?
为什么会这样?如何在设置委托和数据源后立即更新?
-亨利
【问题讨论】:
-
在您的
updateTableView中添加[tableView reloadData];。 -
这不是正常行为,因此您需要发布更多代码,以便我们能够发现您的问题。
-
@TimothyMoose 谢谢回复,你需要什么代码?
-
你的视图控制器。如果那里没有明显的问题,我认为最好的办法是亲自动手并进行一些调试。
-
@TimothyMoose 我该如何调试这个...?你有什么建议吗?
标签: ios objective-c uitableview delegates datasource