2012-06-18 48 views
6

我是一位经验丰富的C/C++ Windows开发人员,编写我的第一个真正的iOS应用程序。由于我不必担心向后兼容性,因此我决定跳入并使用XCode 4.3中的新Storyboard功能。我发现的是,尽管故事板提供了在应用程序中布置所有屏幕的承诺,包括细节和手势,而无需编写任何代码,但实际情况是除非最琐碎的程序在您运行时不起作用他们通常会以无益的错误信息毫不客气地失败。更糟的是,你不能通过代码来看看有什么不对,因为没有代码新的iOS开发人员应该使用Storyboard和Xibs/Nib吗?

所以我的问题是这样的:如果一个新的iOS开发人员在第一次开发时没有使用Interface Builder和Nibs和Storyboard,如this article所建议的那样?

回答

4

是的!你绝对应该使用Storyboard来构建你的应用程序。关于Interface Builder的一个很好的事情是,它不会抽象出底层的概念 - 你仍然在使用与你在代码中相同类型的对象(UIViewController,UIView等)。

这让您仍然可以了解UIKit的工作原理,但体验使用工具构建UI的好处。

有一个从去年WWDC演讲,概述了您的应用程序使用故事板的基础:

https://developer.apple.com/videos/wwdc/2011/?id=309

+0

我想相信这一点,但有一件事情故事板似乎像一个测试版产品,非常错误。例如:我创建了一个新的故事板Master View控制器项目。将弹出式表格视图更改为静态,在4个部分输入静态字符串。只显示第一部分标题,当您运行程序时,其他字符串都不显示。正如另一张海报评论说的,有时故事板需要[tape tape](http://stackoverflow.com/questions/7921579/iphone-storyboard-editing-a-table-view)才能工作。当它甚至不能正确运行时,即使胶带也无济于事。 – stephmur

+0

@stephmur这是不幸的。模板中的表视图控制器具有覆盖表视图数据源方法以填充它的子类。当您将表格视图切换为静态时,覆盖仍然存在。这导致了静态表视图的数据源被取消。 – retainCount

+0

这真的很酷,你知道了。我怎样才能学习如何使用故事板,而无需从一开始就有深度的知识?你能推荐任何好的资源或书籍吗? – stephmur

2

这是很主观的,但我明确同意。如果您想了解iOS如何工作,请首先启动UI代码。界面构建器对于快速而准确地定位元素非常有用,但像文章中提到的那样,在了解视图和控制器如何协同工作后,您会更加高效。

+0

对不起,改变我接受的答案。我希望我可以接受他们,因为它看起来故事板不像看起来那么简单,所以我可能会这样做:提高我的常识并将其应用于我的故事板。 – stephmur

+0

也许我会学会爱一天他:) –

+0

我得到了一本书[http://www.amazon.com/iOS-Programming-Edition-Guides-ebook/dp/B007OWBAB0/ref=tmm_kin_title_0?ie = UTF8&m = AG56TWVU5XWC2&qid = 1340313206&sr = 1-1-catcorr)声称教授两种方法,所以如果我坠入爱河,我会让你知道。 :) – stephmur

相关问题