我正在制作一个特殊的UIScrollView来显示事件的时间表,(如果你熟悉这些事情就像一个甘特图)并且可能会有数十个这样的事件,一些是可见的,一些是不同的次。
我想知道的是:我应该创建一个类似于UITableView的实现来删除已经滚动的项目,并在其他项目进入屏幕时重复使用这些项目吗?
似乎它可能需要一些工作,如果这不会影响小规模的性能,我不想浪费时间。
我从UIScrollView类引用中得到了这个想法:
“管理滚动视图中显示的内容图形的对象应该平铺内容的子视图,以便没有视图超出屏幕大小。当用户在滚动视图中滚动时,此对象应根据需要添加和删除子视图。“
感谢您的帮助。
答案 0 :(得分:1)
这取决于scrollview中每个项目需要多少内存。除非您构建它或提供有关UIScrollview中每个元素包含的确切数量的更多信息,否则您无法确定。删除不可见的项目并不是一项繁重的工作,但它可能会遇到一些问题。我首先尝试它而不删除它们并优化你添加到scrollview的元素,以便它们尽可能少地使用内存,然后使用仪器检查你的内存使用情况。然后从那里去。希望有所帮助。