页面控制器和UITableView导致小的延迟

时间:2011-03-13 18:03:58

标签: iphone uitableview sdk uipagecontrol lag

我有一个页面控制器,它包含五个表视图。在这些表视图之间滑动时,存在短暂的滞后。这是正常的还是可能是由一些不良代码引起的?

我上传了一段展示此问题的简短视频。

[Video] UITableView with UIPageController causes a lag

编辑: 就好像它有助于删除cell.detailTextLabel.text这有意义吗?

这是我设置详细信息标签的地方:

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat: @"'kl.' HH:mm"];
NSTimeZone *gmt = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
[dateFormat setTimeZone:gmt];
NSString *dateFormatted = [dateFormat stringFromDate:[thisEntry objectForKey:@"date"]];

if(![[thisEntry objectForKey:@"weekDay"] isEqualToString:@"Ikke programsat"]) {
   cell.detailTextLabel.text = [NSString stringWithFormat:@"%@ %@", [thisEntry objectForKey:@"scene"], dateFormatted];
}

[dateFormat release];

1 个答案:

答案 0 :(得分:1)

我猜这个问题很可能与每页顶部的图片有关。每个页面中的表似乎只包含仅包含文本的轻量级单元格。因此,每个表应该很快渲染。这是顶部的图像可能需要一些时间来渲染。每当我在任何应用程序中遇到延迟时,我首先看到的是图形资产。根据图像的大小和分辨率,图像可能需要一些时间来渲染。如果是图像,那么您需要考虑使用一些缓存的可能性。 UIImage和UIImageView上的文档包含一些有用的信息。

另外,我建议您使用Shark运行一些测试,以准确确定代码的哪些部分导致性能损失。它可能根本不是图像,而是一些代码,它们正在查询由于某种原因必须等待的数据。

希望这有帮助。祝你好运。