首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >绘制许多矩形的iOS最快方法

绘制许多矩形的iOS最快方法
EN

Stack Overflow用户
提问于 2013-07-02 00:32:11
回答 4查看 500关注 0票数 0

我想在iPad上显示音频仪表,由许多绿色,红色或黑色的小矩形组成。他们不需要花哨,但可能会有很多人。我正在寻找最好的技术来快速绘制它们。以下哪种技术更好: CALayers文本地图集、OpenGLES文本地图集还是其他?

感谢您在问题因过于宽泛而关闭之前的回答。不幸的是,我不能缩小问题的范围,因为我不知道使用哪种技术。如果我知道答案,我就可以把问题缩小到很小的范围。

EN

回答 4

Stack Overflow用户

发布于 2013-07-02 01:03:42

最快的绘图方式是在自定义视图中使用OpenGLES。

票数 4
EN

Stack Overflow用户

发布于 2013-07-02 01:16:38

另一种方法是在CALayers中使用纹理贴图集。你可以把9组盒子画成一个单独的图像(0-8个盒子),然后在屏幕上创建300个CALayers,所有这些都作为它们的内容。在每一帧中,切换每个图层以指向它需要使用的纹理贴图集的部分。我以前从来没有用300层这样做过,所以我不知道这会不会成为问题-我只用了六个左右的数字来更新每一帧,但效果真的很好。有关更多信息,请参阅此博客文章:

http://supermegaultragroovy.com/2012/11/19/pragma-mark-calayer-texture-atlases/

票数 4
EN

Stack Overflow用户

发布于 2013-07-02 00:44:44

重复绘制的最好方法是避免绘制已经在屏幕上的内容。由于音频仪表倾向于频繁更新,但它们的大部分区域保持不变,因为音频信号相对平滑,所以您应该跟踪绘制的内容,并仅绘制差异。

例如,如果在上一次更新中绘制了一个带有50个绿色方块的信号表,现在需要绘制48个绿色方块,则应仅重画与上一次更新不同的两个方块。这将为您节省大量的quartz调用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17409368

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档