如何在启用分页的 UIScrollView 中延迟加载 100 多个页面?
Posted
技术标签:
【中文标题】如何在启用分页的 UIScrollView 中延迟加载 100 多个页面?【英文标题】:How do I lazy load 100+ pages in a UIScrollView with paging enabled? 【发布时间】:2010-06-28 13:37:14 【问题描述】:我正在创建一个类似漫画书的应用程序。我正在使用启用了分页的 UIScrollView 来显示高分辨率全屏图像(该应用程序的工作方式类似于 Photos.app 但禁用了缩放)。最终产品将有近 200 张图像需要用户翻阅。如何为这么多页面设置 UIScrollView?
仅使用直接的 UIView 就很容易实现,但是 UIScrollView 的“感觉”在弹跳等方面更好,我认为它为我的应用程序增加了更多价值。我应该如何让它发挥作用?
【问题讨论】:
【参考方案1】:查看 Apple 的 PageControl 示例代码。它向您展示了如何使用 UIScrollView 和 UIPageControl 来循环浏览视图控制器(就像照片应用程序一样)。每个页面仅根据需要加载。
基本上要实现延迟加载,您可以从一组空视图控制器开始。然后,当您滚动时,您只加载当前页面的视图控制器以及前一个和下一个视图控制器,以便滚动看起来很流畅。只需查看示例项目,它相当简短且易于理解。它至少应该让你开始。 UIScrollView 将告诉适当的控制器何时加载自身。然后控制器负责加载其内容(在您的情况下为图像)。
祝你好运。
【讨论】:
前段时间我查看了那个示例项目,出于某种原因,我似乎记得它没有延迟加载。很明显,我错了。谢谢! 更新链接:developer.apple.com/library/content/samplecode/PageControl/…以上是关于如何在启用分页的 UIScrollView 中延迟加载 100 多个页面?的主要内容,如果未能解决你的问题,请参考以下文章
如何在启用分页的情况下实现 UIScrollView 平铺?
具有滚动效果的页面视图控制器与启用分页的 UIScrollView