使用Storyboarding的优点和缺点?

cvu*_*che 23 xcode cocoa-touch ios xcode-storyboard

我已经写了一段时间的iOS应用程序,并逐渐从完全以编程方式的UI到集中使用Interface Builder.我现在正在考虑为我的一些新项目使用新的故事板功能,但我没有足够的经验或知识来计算这样做的优点和缺点. 任何人都可以提供一些关于何时使用Storyboarding以及何时浪费时间的示例或信息?

tac*_*cos 22

故事板的优点

  • 这很酷 - 设计界面的方式
  • 利用StoryBoardSegues识别导航/莫代尔关系
  • 如果您的应用程序支持多个设备,那么组织不同视图的好方法(通过故事板文件而不是命名等)
  • 很适合原型设计
  • 原型UITableViewCell可以节省时间

故事板的缺点

  • 这是一个运行时功能,所以我相信它只适用于iOS 5
  • StoryBoardSegues在我的经历中有点僵硬,你可以利用prepareForSegue很多
  • 像IB一样,与其他显示引擎和工具包不太友好
  • 难以为单个视图或一组视图共享设计 - 您必须全部或全部发送

这些看起来很肤浅,我想我没有多想过......起初我对故事板很感兴趣,但现在我已经恢复到IB甚至只是编程视图配置......我越多使用它们,我越不喜欢它们,它们就越觉得噱头/浪费时间.

编辑

几年前我写了这个答案.虽然有些观点可能不再相关(即需要iOS 5+的事实),但我已经和以前一样留下了后代.

过了一段时间,我的观点在故事板上没有改变.正如其他人所提到的那样,如果您在一个管理视图很少的应用上独立工作,它们就没问题了,但是它们在源代码控制和协作方面变得非常痛苦.另外,我更喜欢单文件一对象,而故事板显然将各种东西捆绑在一起(IB也是如此,但程度较小).

如果我正在编写一个旨在维持任何严重时间的应用程序,我会选择IB上的程序化视图配置,但绝对是IB在故事板上.