查找适用于 iPad 的 xib

Posted

技术标签:

【中文标题】查找适用于 iPad 的 xib【英文标题】:find xib for iPad 【发布时间】:2010-09-03 15:40:00 【问题描述】:

我通过以下方式加载我的 xib 文件:initWithNibName 以编程方式。如果我设置类似:[[LoginController alloc] initWithNibName:@"LoginController" bundle:nil];

如果在iPhone上执行不应该加载LoginController.xib,在iPad上搜索LoginController-iPad.xib?我的代码没有发生这种情况,是我必须手动选择正确的还是出了什么问题?

提前致谢!

【问题讨论】:

可能是 LoginController~ipad.xib... 波浪号 + 小写。您将在 Apple 文档的命名约定部分找到有关这些内容的更多信息。 【参考方案1】:

不,文档中没有任何内容表明“-iPad”是initWithNibName: 的有效类资源修饰符,或者initWithNibName: 完全支持修饰符。

顺便说一句,.xib 文件由 Xcode 编译为 .nib 文件,因此应用程序永远不会看到 .xib

【讨论】:

【参考方案2】:

这是一个老问题,所以当@shaggy frog 回答这个问题时,这个命名约定可能不存在,但如果命名正确,ios 确实应该加载 iPad 特定的 xib。在这种情况下,您的命名略有偏差,iPad 特定 xib 的正确命名方案是

NameOfYourViewController~ipad.xib

请注意,它是波浪号 (~) 而不是破折号 (-),并且 ipad 是小写的。

【讨论】:

以上是关于查找适用于 iPad 的 xib的主要内容,如果未能解决你的问题,请参考以下文章

适用于 iPhone 和 iPad 的 Xcode 故事板和 xib

无法使用 Xcode 4 创建 iPad XIB

在 xib 文件上设置的约束不适用于 ipad ios

如何在 xib 的 appdelegate 中检查设备是 ipad 还是 iphone?

如何在之前为 iPhone 构建的应用程序中为 iPad 添加 .xib 文件?

链表适用于( )查找