我有一个 UIView
子类,我需要将 UIImage
写入到该子类上。根据您喜欢使用的 API 系列,有几种方法可以为这只猫剥皮,我对最快的感兴趣。是 UIImage
的 drawAtPoint
还是 drawRect
?或者也许是基于 C 的 CoreGraphics 例程,或者其他什么?如果更改我的源图像数据格式会使 blitting 速度更快,我会毫不犹豫地改变它。
为了描述我的情况,我的应用程序有大约 10 到大约 200 个小 UIView
s(64x64),其中的一个子集需要根据用户交互重新绘制。我当前的实现是在我的 drawAtPoint
子类的 UIView
例程中调用 drawRect
。如果你能想出更好的方法来处理这种情况,我会全神贯注(好吧,眼睛)。
最佳答案
使用 OpenGL View 可能是最快的。保留图像的年龄缓存(或者如果您知道确定何时可以从缓存中删除某些图像的更好方法,请务必使用它)并在应用程序空闲时预加载尽可能多的图像。它应该非常快,几乎不涉及 Objective-C 调用(只是 -draw
)
关于iphone - 最快的 iPhone Blit 程序?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1396711/