有什么更好的?
首先创建一个带有视图的.xib,然后使用UIApplication.shared.keyWindow?.addSubview(view)将其放置在该选项卡栏的顶部
第二个创建情节提要并模态显示
答案 0 :(得分:1)
首先,您永远不要以这种方式使用keyWindows
。
https://developer.apple.com/documentation/uikit/uiwindow
仅在需要执行以下操作时才使用Windows:
- 提供一个主窗口来显示您应用的内容。
- 根据需要创建其他窗口以显示其他内容。
您应该选择rootViewController
(可以通过情节提要进行此操作),然后在addSubview()
中选择rootViewController.view
Windows本身没有任何视觉外观。相反, 窗口托管一个或多个视图,这些视图由窗口的根目录管理 视图控制器。您在自己的计算机上配置根视图控制器 故事板,添加适合您界面的任何视图
话虽这么说,您在做.xib
和情节提要之间的最初问题只是个人品味问题,您需要考虑两者的利弊:
故事板:使您能够使用segues和Container View Controller,但 最终会产生一个非常大的故事板文件,该文件会加载很长时间并且容易发生冲突使用git时。除非您使用情节提要参考进行重构。
.xib:使您设置起来不易发生git冲突,并且每个文件都很小并且加载速度很快。
我认为,一旦开始通过情节提要引用拆分情节提要,情节提要更好。
我的首选方法是使用协调器模式从代码创建所有视图。没有界面生成器,没有Xcode问题。
答案 1 :(得分:0)
首先,这实际上不是编码问题。但是,我认为这取决于个人喜好,因此您可以选择自己喜欢的任何方式。
这是一篇很棒的文章,介绍了什么时候使用以及何时认为合适: https://medium.com/ios-os-x-development/interface-builder-is-great-storyboards-are-not-69232a91044e