0

我想知道使用 .xib 文件来绘制/与用户界面交互是否是一种好习惯。使用 xib 文件有什么好处?如果我不使用它,只需初始化一个视图控制器并在硬代码上绘制/定位对象是最佳实践吗?有什么好处?我正在考虑它,因为有些配置无法在 .xib 中完成,只能使用硬代码。制作一个通用的应用程序,国际化是更好地使用 .xib 还是可以全部用硬代码完成?谢谢你。

4

4 回答 4

2

我不认为这是“最佳实践”的问题。如果您有一个相当复杂的布局,其中有许多子视图需要放置在彼此之间的特定关系中,那么在 xib 或故事板中做起来要容易得多。对于通用应用程序,您通常会为 iPad 和 iPhone 版本提供单独的 xib 或故事板。就国际化而言,许多与之相关的问题都可以通过布局约束来处理(例如自动更改标签的大小),并且在 WWDC 2012 演讲“Auto Layout By Example”中对此进行了讨论。

于 2013-02-15T17:11:15.520 回答
1

这取决于要求和需要。

大多数情况下,IB 都能满足您的要求,因此无需为所有 GUI 内容编写代码,但您应该知道如何从代码创建 GUI。

对于 iphone,您可以满足您的所有需求,但使用 macos,大型控件和嵌套控件会给您带来麻烦。

所以这取决于你,你觉得哪种方式更简单。

于 2013-02-15T17:08:38.217 回答
0

我认为这取决于您要完成的工作。现实情况是您想使用所有可用的工具。

与试图在代码中弄清楚它相比,使用故事板可以更快、更容易地创建 UI。您还可以立即获得有关其外观的反馈,而无需重新编译。有时,看到一些东西比想象它会是什么样子更容易。

这并不意味着你不应该知道如何在代码中做同样的事情。如果您不能在 xib/storyboard 中执行此操作,我会退回到代码。

您无法执行哪些配置?使用 IB 很容易实现国际化。有一些关于 IB、故事板和国际化的精彩 WWDC 视频。在排除你能做什么和不能做什么之前,我会先检查一下。

于 2013-02-15T17:09:39.443 回答
0

我会亲自使用 Storyboard 创建它,而不是 xib。使用情节提要,您可以以编程方式生成界面、转场等。您还可以在情节提要中创建任何 UIElement,就像在 XIB 中一样。

于 2013-02-15T17:13:17.850 回答