首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >什么时候在iPhone上使用UIView与UIViewController?

什么时候在iPhone上使用UIView与UIViewController?
EN

Stack Overflow用户
提问于 2009-11-07 06:15:53
回答 7查看 18.2K关注 0票数 56

我一直想知道什么时候在iPhone上使用UIView还是UIViewController。

我知道你不应该使用UIViewController,除非它是一个全屏视图,但是还有什么其他的指导原则呢?

例如,我想要构建一个模式覆盖--一个可以在当前屏幕上滑动的屏幕。如果这个模式覆盖是全屏的,那么它应该是一个UIViewController吗?上一次我构建这样的东西时,我对UIViewController进行了子类化,但现在我想知道这是否正确。

EN

回答 7

Stack Overflow用户

发布于 2009-11-07 06:27:44

这是一个很好的问题。

我的基本经验法则。应用程序的每个主要“页面”都有自己的视图控制器。我的意思是,在应用程序设计的线框阶段,作为自己的实体存在的所有东西最终都将由自己的View Controller管理。如果有一个在现有屏幕上滑动的模式屏幕,我会将其视为一个单独的“页面”,并为其提供自己的视图控制器。如果存在覆盖现有页面的视图(如加载屏幕或帮助弹出窗口)。我会以不同的方式对待它们,将它们实现为UIView子类,并将逻辑保留在“页面”视图控制器中。如果弹出窗口有行为,我将使用委托模式与页面视图控制器通信。

我希望这能帮到你。这在很大程度上是一个哲学和架构问题,关于它可以写很多东西。

票数 11
EN

Stack Overflow用户

发布于 2009-11-07 06:30:52

只要视图是全屏的,并且有出口/操作和/或子视图,我就会使用UIViewController。

票数 4
EN

Stack Overflow用户

发布于 2009-11-07 06:44:38

把屏幕上的所有东西都放到一个UIViewController中,直到视图控制器开始有太多的代码,然后将屏幕分解成一个主视图控制器包含的多个UIViewControllers……

要将其放入您的答案的上下文中,请为该模式覆盖创建一个视图控制器。如果你使用导航控制器来显示它,它无论如何都会有一个(你可能应该这样做)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1690852

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档