iOS - 不同的ViewControllers - 如何加载它们?

时间:2015-05-12 00:04:53

标签: ios swift uiviewcontroller uiscrollview uipageviewcontroller

我正在尝试开发一个在第一个标签上使用3个不同视图控制器的应用。我有3个选择: 1 - 将视图控制器嵌入到uipageviewcontroller中 2 - 将视图控制器嵌入到uiscrollview中 3 - 使用由uisegmentedcontroller控制的容器 - 隐藏属性true或false ... 这些视图控制器中的每一个都使用集合视图来呈现从远程服务器下载的异步照片。 使用3,来自所有视图控制器的照片同时加载,因此,这不是一个好的解决方案。 哪一个是在这种情况下选择的最佳解决方案?

2 个答案:

答案 0 :(得分:2)

如果您担心同时下载大图像,则只能在viewDidAppear开始下载过程。除非用户打开一个视图控制器,否则下载过程不会启动。

如果您担心多个视图控制器位于内存中,那么您应该很好地设计它们。使用UITableViewControllerUICollectionView可以帮助您通过重复使用视图来降低内存使用率。

在我看来,你应该根据你的UI设计选择一个解决方案,只需有效地构建代码,这样你就不必担心大量下载或内存不足

答案 1 :(得分:1)

你没有提到标签栏控制器,这是另一个可行的选择。 (或许这就是你的意思而不是UISegmentedControl?)

哪种方式最好取决于您对应用的所需功能,而不是任何内容。

我会将分段控件放在列表的底部。这是一个非标准的UI,还需要你做很多自定义工作。