使用多个UIViews而不是多个UIViewControllers

时间:2014-10-25 17:33:52

标签: ios objective-c iphone uiview uiviewcontroller

我已经开发了3个月的iOS应用程序。我知道所有MVC的东西,设计问题和UIViewController功能与UIView相比。但是,我找不到为什么使用多个UIViewControllers是多个屏幕的“应该做”的答案。例如,而不是为每个选项卡使用一个UITabBarController和一个UIViewController ,我们可以有单个UIViewController ,它是根视图控制器,每个选项卡的一个UIView 即可。然后,为了提供选项卡功能,我们可以使用UIView的隐藏属性。换句话说,例如,为了显示第一个选项卡,我们设置除了与第一个选项卡对应的UIView之外的所有UIView(对应于选项卡)的 hidden = true

除了这种方法中的设计问题,还有什么问题?时间和记忆效率,segue动画等?

提前致谢...

1 个答案:

答案 0 :(得分:0)

是的,您可以使用单个控制器和多个视图,并在需要时在它们之间进行交换。 (对于简单的用例)

但是如果每个标签中的功能很复杂且彼此无关,那么最好选择多个控制器。
假设您正在使用可用的开源API构建选项卡式Twitter应用程序,第一个选项卡用于时间轴,第二个选项卡用于交互,第三个用于配置文件,然后用于设置等。在这种情况下,每个选项卡都将具有复杂的功能集,并且更好地将相关任务委派给不同的控制器。

希望你找到答案!