【问题标题】:iOS - Different ViewControllers - how to load them?iOS - 不同的 ViewControllers - 如何加载它们?
【发布时间】:2015-07-22 15:51:47
【问题描述】:
我正在尝试开发一个在第一个选项卡上使用 3 个不同视图控制器的应用。我有 3 个选项:
1 - 将视图控制器嵌入到 uipageviewcontroller
2 - 将视图控制器嵌入到 uiscrollview
3 - 使用由 uisegmentedcontroller 控制的容器 - 具有隐藏属性 true 或 false……
这些视图控制器中的每一个都使用集合视图来呈现从远程服务器异步下载的照片。
使用 3,来自所有视图控制器的照片同时加载,所以,我认为这不是一个好的解决方案。
在这种情况下,选择哪一个是最好的解决方案?
【问题讨论】:
标签:
ios
swift
uiviewcontroller
uiscrollview
uipageviewcontroller
【解决方案1】:
如果您担心同时下载大图像,请仅在viewDidAppear 中开始下载过程。除非用户打开您的视图控制器之一,否则下载过程不会启动。
如果您担心内存中存在多个视图控制器,那么您应该好好设计它们。使用UITableViewController 或UICollectionView 将帮助您通过重用视图来降低内存使用率。
在我看来,您应该根据您的 UI 设计选择一个解决方案,并简单地高效地构建您的代码,这样您就不必担心大量下载或内存不足
【解决方案2】:
您没有提到标签栏控制器,这是另一个可行的选择。 (或者也许这就是你的意思而不是 UISegmentedControl?)
哪一个最好取决于你想要的应用程序的用户体验。
我会将分段控件放在列表的底部。这是一个非标准 UI,还需要您进行大量自定义工作。