【发布时间】:2011-09-02 12:15:34
【问题描述】:
我正要启动一个通用的 iOS 应用程序。我只想使用界面生成器来制作这个应用程序。
有人可以建议我如何安排两个 nib 文件吗?每当我创建一个类时,只会创建一个 xib 文件,但我想要两个 xib 文件,一个用于 iPhone,另一个用于 iPad 应用程序,因为这是一个通用应用程序。
您还可以建议哪种方法更好,即通过界面或使用编码为这个通用应用程序制作 UI。
【问题讨论】:
我正要启动一个通用的 iOS 应用程序。我只想使用界面生成器来制作这个应用程序。
有人可以建议我如何安排两个 nib 文件吗?每当我创建一个类时,只会创建一个 xib 文件,但我想要两个 xib 文件,一个用于 iPhone,另一个用于 iPad 应用程序,因为这是一个通用应用程序。
您还可以建议哪种方法更好,即通过界面或使用编码为这个通用应用程序制作 UI。
【问题讨论】:
只需将另一个 xib 文件添加到项目中。您可以从制作您制作的第一个版本的副本开始,或者使用空白的 xib。
为确保在运行时加载正确的 xib,您有几个选项。我更喜欢在 UIViewController 上重载 nibName,但你也可以只调用 initWithNibName:,传递正确的 nib 名称。
如果你重载了 nibName,它可能是这样的:
- (NSString*) nibName
{
return UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone ? @"myphonenib" : @"mypadnib";
}
【讨论】:
就个人而言,我更喜欢使用 xib,因为它们的目的是“隐藏”GUI 代码,使“功能”代码整洁。“所见即所得”的 UI 设计也可以加快开发速度。
至于添加 XIB...按照 TomSwift 的建议,稍后再添加
或者像我一样,稍后再批量执行...即
(请注意确保您获得所有参考更改并且正确可能会很整洁并备份所有内容:)
祝你好运。
【讨论】: