我正在设计的iPad应用程序将显示全屏UIScrollView
,允许用户浏览大量(200或更多)图像 - 大小相同,无分页。图像将从Web加载,并且没有预定义的顺序。现在我做的是
这适用于有限数量的对象(即使UI有时没有响应),但它不会扩展。当我加载超过60-70个自定义视图控制器时,应用程序崩溃。其中大多数都是屏幕外的 - 图像每个280x280,因此在任何给定时间只能看到12个。
我想我需要找到一种方法来继续在后台加载数据,但要管理只保留那些实际在UIScrollView
可见范围内(或附近)的视图。我是否需要使用Core Data来管理它?如果你处理了类似的挑战,我很想听听你是如何解决这个问题的 - 我猜这是一个很常见的挑战。
答案 0 :(得分:2)
您不加载60-70个视图控制器。您只有屏幕上的视图控制器数量,当视图向下滚动(比如说)时,您将控制器置于顶部,更改已存储的图形并将其放在底部。
您正在加载的其他人可以在后台下载。您不需要核心数据(尽管您可以使用它)。
在滚动视图上查看苹果视频,它们涵盖了这一点。
答案 1 :(得分:0)
这就是我这样做的方式。 我当时只显示了3个UIView,每次用户前进时我都会卸载第一个UIView并加载一个新的UIView。用户没有注意到这一点,因为下一个屏幕和上一个屏幕总是被加载( 3 UIViews)