【问题标题】:UIImage performance: imageNamed vs UIGraphicsGetImageFromCurrentImageContext from bezierPathUIImage 性能:来自 bezierPath 的 imageNamed 与 UIGraphicsGetImageFromCurrentImageContext
【发布时间】:2015-11-29 09:30:51
【问题描述】:

在我们的应用程序中,我们不是使用资源库来存储我们应用程序的所有图像(适用于所有显示类型 - 2x、3x),而是使用UIBezierPath 将每个图像绘制到上下文UIGraphicsGetImageFromCurrentImageContext

这是在我们的应用程序中使用图像的一种高效且稳健的方式吗?还是使用预渲染资产效率更高?

我的直觉是它会减慢速度 - 例如,在 UITableView 内部,它需要为每个 cellForRowAtIndexPath 绘制图像并从上下文中获取它,而不是从缓存中获取它。

【问题讨论】:

    标签: ios uitableview uiimage


    【解决方案1】:

    您的方法肯定会减少应用程序的下载大小,但您不希望在运行时重复生成图像。这肯定会减慢应用程序的速度。相反,请考虑在启动应用程序时启动一个进程,该进程创建所有图像并将它们缓存到磁盘。还可以考虑创建您自己的内存缓存,这样您就不需要不断从磁盘加载经常使用的图像。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-24
      • 2011-02-25
      • 2012-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多