Ios 放置视图控制器相关枚举的位置 处境
我有一个具有多个子视图控制器的页面视图控制器。 每个子视图控制器略有不同 为了便于管理,我定义了enum MyPageViewChildIos 放置视图控制器相关枚举的位置 处境,ios,swift,enums,directory,uipageviewcontroller,Ios,Swift,Enums,Directory,Uipageviewcontroller,我有一个具有多个子视图控制器的页面视图控制器。 每个子视图控制器略有不同 为了便于管理,我定义了enum MyPageViewChild enum MyPageViewChild { case someName... case someName... case someName... case someName... case someName... case someName... case someName... } 问题 我正在努
enum MyPageViewChild {
case someName...
case someName...
case someName...
case someName...
case someName...
case someName...
case someName...
}
问题 我正在努力找出放置枚举的最佳文件的位置 当enum很短时(比如没有额外的var&funcs,除了该case声明),我可能可以将它与页面视图控制器放在同一个文件中 当枚举相当长时,就像有许多额外的var&func一样,它应该放在某个地方,但不能放在与页面视图控制器相同的文件中
问题: 它与视图控制器密切相关,因此我计划创建一个文件PageViewChild.swift,并将其直接放置在与页面视图控制器相同的位置 所以目录(或者实际上是Xcode组)是这样的
- ViewController
- MyPageViewChild.swlft <- enum among with view controllers
- MyPageViewController.swift
- MyPageViewChildOne
- MyPageViewChildTwo
- MyPageViewChildThree
-视图控制器
-MyPageViewChild.swlft首先,我不得不说这是一个基于观点的问题,它实际上取决于您的代码组织
无论如何,在类范围内或范围外声明enum并没有什么区别。您必须记住的唯一一件事是,如果需要获取它的引用,则必须指定枚举的声明位置
SomeClass.Enum
我认为,若enum和其他类密切相关,那个么在相关类的作用域内声明enum是可以的。例如,我们可以在Swift的新版本中看到这种行为,其中许多枚举已重命名(基本上,枚举已移动到相关类的作用域,并重命名为聪明的自描述短名称)
很好的例子可以是重命名与UIControl
UIControlEvents -> UIControl.Event
你看到这个策略了吗?所以,决定。我为枚举创建一个不同的文件,并将所有枚举存储在那里。将此文件作为帮助者保留,因为它在我的整个项目中都有帮助。此外,它简化了文件结构,任何人都可以随时轻松访问它,而无需搜索捆绑包中的文件。