0

我有一个由五个表视图组成的页面控制器。在这些表格视图之间滑动时,会有短暂的延迟。这是正常的还是由一些错误的代码引起的?

我上传了一个简短的视频来演示这个问题。

[视频] 带有 UIPageController 的 UITableView 导致延迟

编辑: 好像它有助于删除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];
4

1 回答 1

1

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

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

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

于 2011-03-13T18:52:16.320 回答