自定义iPhone应用程序界面



我正在构建一个基本的应用程序界面,该界面将包含文本、输入字段和按钮。为了在项目截止日期前获得一个工作版本,我想我会在第一次迭代中使用默认的Interface Builder(IB(组件,然后如果有足够的时间,我想通过添加自定义组件来"活跃"界面。。

在后期阶段,用定制组件交换IB组件有多容易?

这取决于您所说的交换IB组件的确切含义,但总的来说,IB完全支持在其自己的概念框架内自定义UI。另一方面,很明显,以编程方式定义UI将为您提供您可能想到的所有自定义可能性。

从某种意义上说,您可以将IB视为一种以图形方式声明UI元素及其关系的方式,并在加载IB-xib文件时为您自动实例化这些元素。这本身就是一个非常灵活的机制,允许你有很多可能性。

例如,假设您在IB视图中的某个位置有一个按钮。在第一个版本中,您可以将该按钮的类设置为普通的UIButton;稍后,您只需指定按钮类实际上是一个YourCustomClass,并且您有了它,您的UI将使用您的自定义按钮,而无需更改太多代码(可能与自定义按钮实现相距一两行(。许多其他类型的UI元素也是如此。

除此之外,还有一些类,如UITableView,我认为在IB之外可以更好地自定义(即,通过以编程方式指定自定义,例如自定义单元格(。但在这种情况下,首先在IB中定义接口也不是什么大障碍,只需将所需的代码添加到程序中即可。

无论如何,有一些自定义是IB不容易实现的。一个例子是可以更好地控制UI组件的分配方式和时间;因此,比如说,您被限制为一次实例化xib文件,而通过编程,您可以欺骗它的各个方面。或者,可能有一些UI元素更适合程序化定义(比如,可滚动的图片网格(,所以IB不符合要求,或者对此几乎没有支持(但你一开始就无法用它定义UI元素(。

相关内容

  • 没有找到相关文章

最新更新