在iOS中使用uiscrollview时,我遇到了内存问题。
我有一个具有巨大子视图(4000x600)的滚动视图。在这个子视图中,我有其他UIImageViews作为子视图。
情况就是这样:

当我打开滚动视图时,我可以看到内存和进程都在急剧增加。
要解决这个问题,我想知道的是:直接将我的所有视图添加到滚动视图中,而不传递到“中间”大视图,会更好吗?
提前谢谢。
发布于 2016-03-21 16:08:50
无论您的许多子视图是直接作为滚动视图的子视图添加,还是作为单个大型容器视图的子视图添加,都无关紧要。只要它们都加在一起,它们就会被加载在内存中并浪费资源。相反,您应该在用户向左和向右滚动时动态地添加和删除这些子视图。
与其发明轮子,不如使用UICollectionView。它的目的就是要实现你所需要的。然后,每个图像视图将成为该集合视图中的一个单元格。集合视图管理视图重用,并且只在内存中保存滚动位置周围显示所需的单元格。
https://stackoverflow.com/questions/36136068
复制相似问题