Swift初学者:Storyboardless应用程序-我删除了Storyboard,并重用了更多Swift代码和样式!

六个月前,当我检查一个Github存储库时,我意识到该存储库没有任何Storyboard,所有设计都在代码中定义。

首先,我认为以这种方式开发应用程序将是可视化UI和检查设计的噩梦,但我也看到了好处,合并Storyboard时不再有git冲突,应用样式将更容易通过代码进行,因此我决定尝试一下。

首先要做的是永久删除您的主故事板! 然后在您的AppDelegate定义一个新的根控制器:

在“部署信息”下的项目设置中,将主界面保留为空白:

完成此步骤后,您的应用将直接从代码(在本例中为MainViewController

当您需要使用情节提要板来放置布局工具时,我会通过CocoaPods使用SnapKit来帮助我进行布局。

这是代码中MainViewController定义的示例,看看对snp.makeConstraints方法的调用以及使用一些简单的Struct定义颜色和字体的Styles使用

以及对应的样式:

因此,最大的优点是我可以重用LoginViewControllers,SignUpViewControllers,关于,配置文件等,并且只需更改Styles.swift定义就可以通过应用程序重用许多代码。