iOS故事板我应该使用它们吗?

时间:2012-12-15 03:32:12

标签: ios xcode storyboard uistoryboard

我是iOS开发的新手(尚未创建应用程序),但我向我的朋友寻求建议,该应用程序在市场上拥有非常高评价的应用程序。他说不要使用故事板。

尽管我想听取他的意见,但他们似乎真的很有帮助。

  • 这是否可能导致我的应用程序出现问题?
  • 我有什么理由不想使用故事板吗?

来自Android背景,我不明白我为什么要使用它们。

6 个答案:

答案 0 :(得分:8)

我建议不要使用故事板或界面生成器。

  • 如果您花更多时间使用它,您将更快地学习Objective-C。在IB和代码之间切换,你需要学习两件事。上下文切换仍然会让你慢下来。
  • Nib和故事板是大型XML文件,它们在源代码控制方面表现不佳;如果你在与其他人同时工作,你 会发生合并冲突。
  • 您无法在IB中看到所有正在发生的事情,因此很难找到布局问题等内容。
  • 您不能以代码的方式在IB中搜索或替换
  • 笔尖和故事板将您的视图逻辑放在控制器中。这对你来说是否有问题取决于你有多少MVC纯粹主义者。
  • 如果你想将你的应用程序移植到Android上,那么IB将会更加困难。

这一切都来自经验。我开始经营一个使用IB开发iOS应用程序的小型软件团队(故事板还没有出来),并且在一年之内它导致了很多问题,我不得不禁止它的使用。当我们停止使用它时,我们的生产力提高了。

答案 1 :(得分:8)

除了快速原型之外,我倾向于避免使用故事板。如果你知道你有一个非常简单的应用程序,并不会变得复杂,并且你是唯一的开发人员,故事板可能没问题。

以下是一些博客文章,详细介绍了使用故事板时的一些难点:

以上两点都有点陈旧,但我相信相关的观点仍然适用。

请注意,理论上您需要使用故事板来获取静态表,这可能很有用。要获得此优势,您可以只将静态表放在storyboard文件中(注意:您可以在应用程序中包含多个storyboard文件)并使用xibs或仅使用代码来完成UI的其余部分。

答案 2 :(得分:4)

我不认为这个问题真的是可以回答的。任何技术决定都有利弊,这一点也不例外。

优点:

  • 视觉,因此您可以更快地了解应用的外观
  • 少代码
  • Autolayout 可以更容易
  • 这不是全有或全无。您可以在Storyboards中构建“基础”并在代码中完成它

缺点:

  • XML文件的大毛球使合并冲突非常讨厌
  • 比代码更少的灵活性(没有继承等)
  • 如果你的应用中有很多屏幕,除非你有一个巨大的屏幕,否则使用单个故事板可能会非常困难!

答案 3 :(得分:3)

我认为使用与否并不重要,最重要的是你的应用程序是什么?(质量,美观,快速......)。 StoryBoard非常适合初学者缩短设计时间和理解。 但是,当成为专业开发人员时,您会喜欢通过编码来绘制界面,因为打字比图形更快。

答案 4 :(得分:3)

这完全取决于你。如果您单独开发应用程序,故事板非常有用。如果你在团队中工作,最好使用.xibs,因为与故事板相比,将它们与svn合并的问题更少

答案 5 :(得分:2)

非常广泛的问题。有时候故事板很棒,有时甚至是麻烦。取决于您的应用程序的要求和兼容性需求。

有关何时使用故事板以及何时使用XIB的详细解释,请参阅此答案:

When to use Storyboard and when to use XIBs