【问题标题】:Load One viewController at a time in memory在内存中一次加载一个视图控制器
【发布时间】:2016-11-21 06:38:31
【问题描述】:

我在我的应用程序中使用了一个与 UIPageController 相关的第三方。我在我的应用程序中显示类别,并且我使用相同的类来显示数据。例如,如果我显示 5 个类别,则该 viewController 的 5 个对象被创建,5 个对象在内存中。

有没有办法在内存中一次只加载一个viewController?

【问题讨论】:

  • 考虑使用 UICollectionView 作为 UIPageViewController 的替代品,UIPageViewController 会加载一个很重的 ViewController,而且大多数时候不需要通过加载 Cell,您无论如何都会获得默认优化的好处,而且它也很轻:) 并且在任何时间点都只会加载一个单元格,并在每次滑动时重新使用 :)

标签: ios objective-c iphone uipageviewcontroller uipagecontrol


【解决方案1】:

我可以理解您希望通过实现此目的来减少内存使用量。

UIPageController 在初始化时加载所有页面(控制器)。如果你想这样做,你有两个选择。

  • 自定义UIPageController
  • 使用iCarousel控制。

iCarousel 将允许您在运行时创建页面,因此您可以一次加载一个viewController。只需很少的自定义,您就可以实现所需的输出,但绝对不需要页面控制点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-17
    • 2019-01-03
    • 1970-01-01
    • 1970-01-01
    • 2020-02-01
    • 1970-01-01
    • 2015-12-02
    相关资源
    最近更新 更多