渲染表格视图单元格的最快方法?

时间:2010-08-11 08:59:28

标签: objective-c performance optimization uitableview uilabel

我正在开发一个应用程序,它要求我在表格单元格中显示许多短文本字符串。目前,我正在使用一个默认的表格视图单元格,其中添加了大约14个UILabel。这些标签中有一半包含不会更改的静态文本,而另一半包含在滚动表时必须更新的动态数据。

由于我的客户抱怨桌子滞后,我想知道是否有更优化的方式来显示数据,并提高滚动性能。例如,如果固定文本直接渲染到视图上而不是包含在UILabels中,那么表格单元格会在滚动表格时更快地呈现吗?我可以使用哪些其他方法来提高滚动性能?

2 个答案:

答案 0 :(得分:1)

表格视图滚动中的性能问题可能由许多问题引起。例如:

  • 确保UILabel不透明以避免混合。 (您可以在Core Animation工具中选择颜色混合图层选项以验证这一点。)
  • 确保使用dequeueReusableCellWithIdentifier:
  • 回收表格查看单元格

如果您发布tableView:cellForRowAtIndexPath:

的实施内容可能会有所帮助

答案 1 :(得分:0)

除了anshuchimala的答案,我建议您删除静态标签并将其集成到您在tableviewcell中用作背景图像的UIImageVie。 除了不透明度(如anshuchimala所提到的)是一个很大的性能阻止程序,但是NSDateFormatter实例的广泛使用可以大大降低你的性能(特别是NSDateFormatter实例的实例需要很大的功能)