当移动带有翻译的超级层时,我会观察到一个巨大的内存使用量,直到应用程序崩溃。
为什么这会占用那么多记忆?我怎么能避免这种情况?
我假设,内存中会存储一个位图?但为什么呢?
我的示例是一个极端情况,这不是我的高效App,所以请不要问你为什么要这样做。它只是一个极端的例子,试图理解,发生了什么。
答案 0 :(得分:2)
它消耗太多内存的原因很明显,因为它的维度非常庞大。引用documentation -
在iOS 2.x中,UIView对象的最大大小为1024 x 1024点。 在iOS 3.0及更高版本中,视图不再受限于此最大值 大小但仍受其消耗的内存量的限制。它是 为了您的最佳利益,保持视图尺寸尽可能小。 无论运行哪个版本的iOS,都应该考虑 平铺任何明显大于尺寸的内容 屏幕。