通过使用另一个背衬层减少UILabel的内存

时间:2015-08-18 14:14:23

标签: ios uilabel core-animation calayer

我使用的是大尺寸标签,它需要太多内存。问题在UILabel (CALayer) is using large amounts of virtual memoryHow to suck down iOS memory without even trying中进行了描述。

是否可以通过例如UILabel交换CATiledLayer的背衬层。 UILabel

我要做的是减少{{1}}的已用内存。例如,使用清晰的背景颜色无济于事。不知道这究竟是什么意思:

  

但是你没有回应drawRect方法来绘制视图的内容

1 个答案:

答案 0 :(得分:2)

您无法使用UILabel支持CATiledLayer,但也没有理由。如果您切换到CATiledLayer(这可能是正确的解决方案),那么您将不得不管理自己的布局。一旦你这样做,UILabel并不会给你带来很多好处。只需使用UIView并按照您的建议进行平铺。

也就是说,您链接的问题讨论了创建500 UILabels。这是一个疯狂的标签数量。您应该使用其他工具,例如CATiledLayer,无限UIScrollViewUITableView等,以便您管理较少数量的可重复使用的视图。