在我们的应用中,我们不是使用资源库存储我们所有应用的图片(适用于所有显示类型 - 2x,3x),而是使用UIBezierPath
将每个图像绘制到上下文{ {1}}。
这是在我们的应用程序中使用图像的有效且强大的方式吗?或者使用预渲染资产更有效率?
我的预感是它放慢了速度 - 例如,在UIGraphicsGetImageFromCurrentImageContext
内部,它需要绘制图像并从每个UITableView
的上下文中获取它,而不是从缓存中抓取它。 / p>
答案 0 :(得分:1)
您的方法肯定会减少下载的应用程序大小,但您不希望在运行时重复生成图像。这肯定会减慢应用程序的速度。而是考虑在启动应用程序时启动一个进程,创建所有映像并将其缓存到磁盘。还要考虑创建自己的内存缓存,这样就不需要继续从磁盘加载常用的图像了。