1

我将在滚动期间在委托的方法中做一些复杂的事情。我还将实现内容的动态预加载,这样理论上可以滚动浏览几十万张图片。但我担心,每次我为滚动方向的下一个大块执行预加载操作时,委托都会等待数据源传递数据,并且整个滚动视图会在那一刻被冻结。

问题是,我总是需要访问滚动视图的子视图。我是该平台的新手,我不知道当我为该预加载操作打开另一个线程时我是否仍然可以访问?还是滚动视图不会等待代表完成任务?

我在计划阶段,所以还没有实施太多的喷气机。

4

2 回答 2

3

您只能使用主线程中的 UI 类。所以你应该做的是在后台线程中尽可能多地计算(我相信你也可以在后台线程中加载你的图像),然后performSelectorOnMainThread:withObject:waitUntilDone:在主线程上用来操作 UI 类。

请参阅如何在此线程中间更新 UI?对于您的问题的另一个实例

于 2009-05-09T14:19:12.787 回答
1

对于你的具体问题,我没有具体的答案。我只是想确保您了解您的应用程序的 ~25MB RAM 限制。我不能提供这方面的链接,因为即使苹果知道这个限制,他们也没有说出来。

于 2009-05-09T12:44:14.490 回答