【问题标题】:Which is best if I wanted Page based design?如果我想要基于页面的设计,哪个最好?
【发布时间】:2014-03-28 06:39:32
【问题描述】:

哪一个更适合用于基于页面的设计,PageviewcontrollerUIScrollview 分页。

哪个会消耗更少的内存?我是通过UIScrollview 完成的;但它消耗了非常大的内存。任何帮助将不胜感激。

【问题讨论】:

  • 这是基于意见的。但是,您应该考虑实现子视图的重用,以提高性能和内存效率。
  • 如何在滚动视图中重用视图和内存效率
  • 这个概念类似于UITableView单元重用。检查您是否可以使用UITableViewUICollectionView 实现所需的用户界面。如果没有,请考虑实现UIScrollView 重用。查看Advanced ScrollView Techniques WWDC 2011 视频。

标签: ios uiscrollview lazy-loading uipageviewcontroller


【解决方案1】:

在应用程序中使用UIScrollView 并不是一件容易的事。对于 iOS 6,您应该使用 UIPageViewController。但是对于 iOS 5,UIPageViewController 就不是很好了,因为它只提供了页面转换的滚动。

然后您可以重复使用 UIScrollView 视图,

SO 中有很多例子,比如this

【讨论】:

    【解决方案2】:

    很难说哪个是“最好的” - 这取决于什么对您的应用有意义。无论您选择哪种方法,都可以通过在需要时将内容“延迟加载”到滚动视图中来最小化内存消耗。例如,如果您正在显示图像页面并且图像作为文件存储在您的应用程序中,那么您应该只添加当前图像和当前图像任一侧的图像。滚动时,您可以加载和添加下一张图片并发布。

    这是一个使用 UIScrollView 展示这种方法的教程-Multiple virtual pages in a UIScrollView with just 2 child views

    UIPageViewController 通过采用 dataSource 模式使其变得更简单,因此您可以专注于响应数据请求,而不必担心操作视图。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-02
      • 1970-01-01
      • 2010-09-20
      • 2015-10-30
      • 1970-01-01
      • 1970-01-01
      • 2012-11-21
      • 2020-01-18
      相关资源
      最近更新 更多