为每个视图iOS创建单独的视图控制器?

mreinders13

这是一个非常简单的简单问题,我相信答案是“是的,这是最佳实践”,但我只是想问这个问题。

在Xcode的情节提要中创建新视图时,创建单独的自定义视图控制器文件来专门处理每个视图是一个好主意吗?

意思是,如果我创建一个名为“ login quiz”的新视图,是否应该创建一个“ loginQuizViewController”来处理我为该视图编写的所有代码?

简短答案:

是的,每个情节提要面板场景通常都具有与其关联的唯一视图控制器类。一个视图控制器有一个root view,它的根下又可能有许多子视图,并且每个子视图可能还有其他子视图。这种视图集合被统称为“视图层次结构”。


长答案:

是的,每个情节提要“场景”都有与之关联的视图控制器。通常,此视图控制器类是UIViewController该特定Interface Builder场景所特有的特定子类。但是您不必一定有视图控制器子类,例如,可以使用现有的类之一(例如,这对于导航控制器场景或选项卡栏控制器场景并不罕见)。

但是,如果您有与特定情节提要板场景相关联的任何自定义逻辑,那么可以,通常您将具有针对该特定场景的唯一视图控制器子类。

有两个小澄清:

  • 您指的是“测验视图”。

    出于口语目的,这很好,但是为了清楚起见,当我们在讨论本测验的所有内容时,它实际上是一个复杂的视图层次结构,而不仅仅是一个视图层次。

    单个“测验”场景将与唯一的视图控制器类相关联,并且该视图控制器类的实例将具有单个“根视图”(由view属性标识),但是view将具有一堆子视图(例如,图片视图,按钮,标签等),其中一些可能具有自己的子视图。

    因此,一个故事板场景具有其自己独特的视图控制器类,但与整个视图层次结构相关联。

  • 我们通常认为场景及其关联的视图控制器代表您在任何给定时间点可能看到的所有内容,但并不总是一对一的关系。有时,您看到的内容由几个情节提要板场景及其各自的视图控制器组成。

    例如,如果您使用的是导航控制器,则导航控制器会照顾顶部的导航栏,而视图控制器可能会照顾导航栏下方的所有内容。屏幕上可见的内容由这两个视图控制器组成。

    或者,在一个更极端的示例中,我们可以定义自己的视图控制器容器在下面的示例中,当我们呈现A时,我们可以定义屏幕的下半部分,以由完全独立的场景B来管理,场景B具有自己的视图控制器:

    在此处输入图片说明

    在这种情况下,A和B都有自己的IB场景和各自的视图控制器。通过在A场景中添加“容器视图”(UIView以上屏幕快照中的浅蓝色)来实现此目的。

    但是要点是,您在屏幕上看到的内容可能是由单个情节提要面板场景和视图控制器捕获的,或者可能由多个情节提要组成。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用物镜C为特定视图控制器创建单独的方向?

来自分类Dev

iOS 7及更高版本:为每个视图控制器设置状态栏样式

来自分类Dev

应用程序中的每个视图控制器是否需要单独的.swift文件?

来自分类Dev

iOS RSS Feed应用程序:我应该为每个视图控制器创建一个类吗?

来自分类Dev

iOS RSS Feed应用程序:我应该为每个视图控制器创建一个类吗?

来自分类Dev

无法在 Swift 中的其他视图控制器中为视图控制器创建实例

来自分类Dev

在视图内创建导航控制器

来自分类Dev

针对API控制器创建视图?

来自分类Dev

未创建视图控制器

来自分类Dev

创建视图和控制器

来自分类Dev

如何创建视图控制器数组?

来自分类Dev

在视图内创建导航控制器

来自分类Dev

滑动显示/创建视图控制器

来自分类Dev

如何将以编程方式创建的视图控制器的视图设置为SKView?

来自分类Dev

iOS中的模型-视图-控制器

来自分类Dev

多个视图控制器-iOS 7

来自分类Dev

iOS无法关闭视图控制器

来自分类Dev

iOS推视图控制器崩溃

来自分类Dev

iOS中的模型-视图-控制器

来自分类Dev

从@selector中取消视图控制器,而无需创建单独的方法

来自分类Dev

不使用树视图控制器创建树视图

来自分类Dev

如何在导航控制器层次结构中限制iOS7中每个视图控制器的方向

来自分类Dev

iOS视图控制器包含| 子视图控制器将触摸传递给父视图控制器

来自分类Dev

iOS容器视图。动态加载视图控制器

来自分类Dev

在iOS中将视图控制器添加为子视图

来自分类Dev

iOS容器视图。动态加载视图控制器

来自分类Dev

不同视图控制器上的iOS共享命令视图

来自分类Dev

从 .net 中的单独控制器操作加载视图

来自分类Dev

标签栏始终出现在IOS的每个视图控制器中。如何解决?

Related 相关文章

  1. 1

    如何使用物镜C为特定视图控制器创建单独的方向?

  2. 2

    iOS 7及更高版本:为每个视图控制器设置状态栏样式

  3. 3

    应用程序中的每个视图控制器是否需要单独的.swift文件?

  4. 4

    iOS RSS Feed应用程序:我应该为每个视图控制器创建一个类吗?

  5. 5

    iOS RSS Feed应用程序:我应该为每个视图控制器创建一个类吗?

  6. 6

    无法在 Swift 中的其他视图控制器中为视图控制器创建实例

  7. 7

    在视图内创建导航控制器

  8. 8

    针对API控制器创建视图?

  9. 9

    未创建视图控制器

  10. 10

    创建视图和控制器

  11. 11

    如何创建视图控制器数组?

  12. 12

    在视图内创建导航控制器

  13. 13

    滑动显示/创建视图控制器

  14. 14

    如何将以编程方式创建的视图控制器的视图设置为SKView?

  15. 15

    iOS中的模型-视图-控制器

  16. 16

    多个视图控制器-iOS 7

  17. 17

    iOS无法关闭视图控制器

  18. 18

    iOS推视图控制器崩溃

  19. 19

    iOS中的模型-视图-控制器

  20. 20

    从@selector中取消视图控制器,而无需创建单独的方法

  21. 21

    不使用树视图控制器创建树视图

  22. 22

    如何在导航控制器层次结构中限制iOS7中每个视图控制器的方向

  23. 23

    iOS视图控制器包含| 子视图控制器将触摸传递给父视图控制器

  24. 24

    iOS容器视图。动态加载视图控制器

  25. 25

    在iOS中将视图控制器添加为子视图

  26. 26

    iOS容器视图。动态加载视图控制器

  27. 27

    不同视图控制器上的iOS共享命令视图

  28. 28

    从 .net 中的单独控制器操作加载视图

  29. 29

    标签栏始终出现在IOS的每个视图控制器中。如何解决?

热门标签

归档