使用Cocoa编程的NIB / XIB文件 - 更快的开发时间?

时间:2009-03-13 01:06:49

标签: iphone cocoa cocoa-touch

我已经使用iPhone SDK进行了一段时间的编程。

我没有使用Interface Builder。这让我有点害怕。我知道实际上我可能是“与框架作斗争”,但我不这么认为。

我发现在我的app委托中实例化我的UITabBarController非常容易,实例化一个UINavigationController,然后按我的方式推送和弹出视图控制器。

当然,我对如何使用XIB文件构建应用程序没有广泛的了解,因为我从未这样做过,但我确实知道它的一般要点,使用NIB在Cocoa中构建了一些Mac应用程序。所以我并非完全无知。

我的问题是,在选择使用XIB布局UITableViewControllers和UIViewControllers而不是以编程方式实例化它们然后设置ivars时,开发时间是否会增加。

正如我所看到的,这两种方法仍然要求您将视图控制器子类化以进行自定义,这可能会对大多数视图产生影响。同样,代表们仍然需要手动课程,从XIB中连接插座的过程似乎与设置ivar相当。

或者我错过了其他一些重点?

谢谢!

5 个答案:

答案 0 :(得分:2)

编写配置UI所需的代码比IB更长。

另外,您可以将设计交给设计师,让他们调整UI。

答案 1 :(得分:2)

最后他们都完成了同样的事情。您应该根据具体情况使用其中任何一个。大多数时候编写代码来创建和定位视图,特别是维护它,将比使用IB花费更长的时间。在一个简单的iPhone应用程序中,这可能不是真的,你也可以在代码中创建所有内容。基本上,你应该知道如何做到这两点,并选择涉及最清晰代码和最快开发的路径。

答案 2 :(得分:2)

当你用它来实际制作视图时,IB会发光;即使是两三个视图也可能是在代码中布局和配置的麻烦。我倾向于将它用于标签栏和导航控制器,有时用于子控制器(通常只有当我认为用户很可能使用它时),但这更多只是因为我已经在那里所以我觉得它很方便。 / p>

他们将在下周宣布推出这个新版本3操作系统,我希望Interface Builder能够获得它在Cocoa中的一些灵活性,在这里你可以为自己的类添加调色板,甚至可以构建复杂的非视图数据结构(通过使用自定义调色板)。不过,我们必须看到。

答案 3 :(得分:1)

不要太担心,IMO Interface Builder也有点过高。

这对于快速启动和运行非常有用,或者如果你的应用程序有很多设置繁琐的屏幕,但你并没有错过太多。

答案 4 :(得分:0)

对于用途,您只需在代码中执行操作就可以了,甚至可能更容易理解。

布置视图或自定义单元格...然后你会进入大量的字体/颜色/位置设置,很快就会爆炸成很多代码,难以维护和调整。在这些情况下,更容易调整你想要的IB。