通用应用程序,无需为每个设备使用单独的 xib

Posted

技术标签:

【中文标题】通用应用程序,无需为每个设备使用单独的 xib【英文标题】:Universal app without using separate xibs for each device 【发布时间】:2013-11-18 07:27:59 【问题描述】:

我想做一个通用的应用程序。虽然我知道如何制作,但通常我们通过为 iPhone 和 iPad 制作单独的 XIB 来做到这一点。但我不想通过使用两个 xib 来实现它,或者只是为不同的设备硬编码框架。谁能帮助我提供一些代码或任何示例应用程序链接,以便一段代码适用于所有设备?我也不想妥协相关的设备分辨率。

【问题讨论】:

如果您使用自动布局,那么 UIKit 将尝试根据屏幕大小格式化您的视图,您可以简单地为所有设备使用相同的文件,但是您不能根据设备中的设备指定不同的布局相同的 xib 文件,因此您有时可能会发现它不灵活。 谢谢,但我误解了一些事情。我想通过编程和编程来查看我应该做什么,这样我就不需要为不同的设备调整框架。就像我不想为 iphone、iphone5 和 ipad 提供单独的框架。如果我们这样做,将来如果另一个不同分辨率的设备出现,那么我们的视图将在这种情况下失败。 【参考方案1】:

您应该为 iPad 和 iPhone 使用两种不同的 xib。只需在您的 xib 名称末尾附加 ~ipad 或 ~iphone 即可,例如 ViewController~ipad.xib,以便根据平台加载。

【讨论】:

以上是关于通用应用程序,无需为每个设备使用单独的 xib的主要内容,如果未能解决你的问题,请参考以下文章

创建两个xib,一个用于iPhone,一个用于iPad

iOS 通用应用程序和 nibs / xibs

通用应用加载不同的视图

iphone, ipad, 通用应用设计, 基于拆分视图

我可以在通用应用程序中制作一个可以在 iPhone 和 iPad UI 之间共享的 XIB/NIB 吗?

如何使用一个 ViewController 文件加载横向 xib?