ios – 在没有CATiledLayer的Scrollview容器中渲染大网格?

前端之家收集整理的这篇文章主要介绍了ios – 在没有CATiledLayer的Scrollview容器中渲染大网格?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在寻找有关如何拥有相当大的滚动视图(比如说8192×8192)的任何建议,它本质上是一个网格,它有大约5-100个按钮放在其中的子视图.

由于CALayer似乎正在为scrollview的内容大小分配一个位图(使用缩放时内存问题尤为突出),因此强力方法会耗尽内存.

我接下来将CATiledLayer添加到它,这解决了内存问题,但是对于网格有一个模糊的影响,因为磁贴是异步生成的,并且仍然不是很理想,因为它使用大量内存实际上是一个微不足道的“绘制一些线条”任务.

似乎我可以通过OpenGL每个帧以某种方式获得控制来绘制我自己的网格,并告诉UIKit不要为scrollview创建一个位图缓冲区,这将是完美的,但不确定这是否可行,甚至是正确的方法

Android上我只是控制了整个绘图/缩放/平移,但这似乎在iOS上看起来非常过分,似乎已经提供了大部分内容

解决方法

您应该查看WWDC 2009视频会话102:“掌握iPhone Scroll Views”以及Apple的ScrollViewSuite示例项目.他们解释了如何使用不同的缩放级别进行平铺滚动视图,听起来就像是您需要的.

猜你在找的iOS相关文章