无法使用可重复使用的细胞。如何在tableView中优化平滑滚动?

时间:2014-11-26 00:09:22

标签: ios iphone performance uitableview optimization

我的应用程序在普通垂直tableView中有一堆水平tableView。

这是一张图片来说明:

enter image description here

这导致了相当不错的水平滚动,但它比垂直滚动更能说明。垂直滚动非常迟钝。 我知道每个tableView都有自己的可重用单元格,因此无法在其他tableView中共享。因此,垂直滚动将始终实例化单元格或至少是我所看到的。

所以我的问题是,如何在没有可重用功能的情况下优化垂直滚动?

水平单元格装有xib并使用自动布局定位。每个单元格至少有十个子视图。混合不多。

    [self.tableView registerNib:[UINib nibWithNibName:@"RATableViewCell" bundle:nil] forCellWithReuseIdentifier:TableViewCellIdentifier];

我知道很难在没有更多信息的情况下给我建议,但如果没有重复使用单元格的情况改变了任何关于优化的传统建议,例如使用shouldRasterize或CoreGraphics,我会更感兴趣。

1 个答案:

答案 0 :(得分:1)

如果您的表现不佳,请通过配置文件确定您的方案中耗时的内容。然后解决配置文件信息中出现的问题。

我们有很多方法可以完成任务的原因之一是,有许多解决方案可以解决各种问题。对于我们遇到的特定任务,某些解决方案比其他解决方我可以说" 10次观看 - 花费很多!"然后你可以减少你的观看次数并发现它不会让你现在的速度变得更快(或者只是让你的节目变得如此快它是,但不太可维护/可重复使用)。另一个例子:-shouldRasterize可以支持或反对你。取决于被绘制的内容。

即使使用CoreGraphics,您通常也可以使用多条路径来获得相同的结果。哪个更快取决于很多事情。

此时的良好优化更多地与理解您的程序(特定)问题/瓶颈以及使您的程序变慢的原因有关,而不是坚持最佳实践以及他们解决问题的可能性。程序

相关问题