【发布时间】:2014-07-26 17:14:18
【问题描述】:
我知道这听起来微不足道,但我对 beta 3/4 中缺少适用于 iOS 应用的“空”模板感到非常恼火。
我讨厌 Storyboard 方法,(IMO 认为它始终是最优雅的方法是天真的)。
事实上,对于我的大多数用例,Storyboards 根本不起作用。
谁能告诉我如何在没有 SB 的情况下使用空模板并到达起点(带有窗口的应用程序委托)? - 或将其他模板之一迁移到非 SB。
准备segue的方法让我不寒而栗,太丑了……
提前致谢。
【问题讨论】:
-
只是好奇,您所说的故事板不是一种选择的“用例”是什么?为什么讨厌
prepareForSegue:方法? -
@duci9y - 当然,我更喜欢程序化方法。我喜欢用代码做事。对于(例如)有 20 多个 VC 的大型复杂项目,Storyboard 简直是不雅的,而且,我发现,适得其反。关于prepareForSegue ...好吧,IMO我认为建议的用法是完全不好的编码习惯。您使用“魔术”字符串来引用您要转换到哪个 VC 的方式怎么样!?我更喜欢创建我的 viewController 并根据需要呈现/推送它。想象一下在 prepareForSeague 中可能有 20 个不同的 VC 按名称引用。多么令人作呕的范式。
-
@duci9y 你能想象带有 20/30 视图控制器的 SB 是什么样子吗? - 它只是不起作用!这对于小项目来说很重要,但对于更大的项目就没有效果了。
-
想象一下你想设计一个自定义容器......故事板肯定有'containerView'对象,但你可以通过它构建的只是最简单的容器。对我来说,另一个主要缺点是 UI 代码的拆分:有些东西你不能在 IB 中设置,所以你必须在代码中设置它们(所有 CALayer 的东西,等等) - 现在你设置一些东西在代码和 IB 中的一些东西中,你总是不得不想“嗯,我在哪里设置的?” - 对我来说没有生产力。但是,Xcode6 添加了@IBDesignable,这是一个很酷的功能,我觉得 SB 就是这样 ;)
-
肯定会的!我的意思是它不适合更复杂的容器。 - 也许我对 IB 的经验不够,但这就是我在开始为 iOS 开发时探索故事板时的印象。 - 我猜@duci9y 一针见血:每个人都有自己的;)