更新到基础数据后,UITableView标头无法正确显示

时间:2010-12-04 19:32:26

标签: iphone cocoa-touch uitableview

第一次使用标题绘图时,我遇到了奇怪的行为。以下是我经历的步骤,每次都可以重现。

  • 转到标签2.选择要下载的项目。
  • 下载完成并将数据导入CoreData数据库,其中 链接到选项卡1上的TableView (示出)。
  • 我在TableView上进行以下调用:

}

-(void)controllerWillChangeContent:(NSFetchedResultsController*)controller {
    [self.setsTableView beginUpdates];
}

-(void)controllerDidChangeContent:(NSFetchedResultsController*)controller {
    [self.setsTableView endUpdates];
}
  • 转到标签1,第1部分的标题显示不正确。

只要我向上或向下移动TableView向上滚动,问题就会立即解决。此外,如果我退出应用程序并重新登录,则会正确显示标题。

我在问题区域周围画了一个红色框。

以前有人见过这种行为吗?

strange header behavior

请注意下面显示标题的方式不同。这就是它应该从一开始就看起来的样子。我在屏幕截图1(上面)和屏幕截图2(下面)之间做的只是滚动UITableView。

this is how it SHOULD look

2 个答案:

答案 0 :(得分:2)

使用最新版本的iOS,这个问题似乎已经消失了。我从来没有找到解决方案。

答案 1 :(得分:1)

您是否记得在新数据可用时重新加载表格 使用这种方法。 这是在主线程上运行,UI只在主线程上运行

 dispatch_async(dispatch_get_main_queue(), ^{

                    [self.tableview reloadData];

                });

它的更新..............