如何使应用程序的设计与 iPhone4/iPhone5/iPad 兼容?有啥捷径吗?

Posted

技术标签:

【中文标题】如何使应用程序的设计与 iPhone4/iPhone5/iPad 兼容?有啥捷径吗?【英文标题】:How to make the design of the application compatible with iPhone4/iPhone5/iPad? Is there any shortcut way?如何使应用程序的设计与 iPhone4/iPhone5/iPad 兼容?有什么捷径吗? 【发布时间】:2013-02-01 05:33:06 【问题描述】:

我正在开发一个需要在 iPhone4/iPhone5/iPad 上开发的应用程序。有人可以告诉我完整的流程或教程链接,以使应用程序与上述所有平台兼容。有一种自动调整大小和自动布局的方法,我不知道如何使用?

据我说,我有两种方法来实现这个概念,要么为 iPhone4/iPhone4s/iPhone5 获取三个不同的 xib 文件,要么在检测到设备后以编程方式设置布局的框架。

你能告诉我实现这个概念的其他简单方法吗?

【问题讨论】:

如果应用程序的 UI 设计在所有设备上都相同,您应该学习自动调整大小或自动布局。通过自动调整大小,您可以避免使用三个 xib。从 Interface builder 为 xib 中的视图设置自动调整大小的掩码。 有什么好的教程可以推荐我自动调整大小 【参考方案1】:

如果您想将您的设计从compatible/migrated 变为iPhone5,请阅读这些文档和问题:-

    Lower Version apps compatible to iPhone 5

    Guide Lines

    Helping Question

它会帮助你实现目标。

谢谢。

【讨论】:

【参考方案2】:

如果你不想为每个使用三个不同的xib文件,那么你必须尝试这种方法

 CGRect screenBounds = [[UIScreen mainScreen] bounds];

之后根据设备设置你的代码

 if (screenBounds.size.height == 568)

    // code for 4-inch screen


else if (screenBounds.size.height == 1024)

    //code for ipad

else

    // code for 3.5-inch screen

【讨论】:

我已经实现了这段代码。有没有办法使用单个 xib 来实现这个? 这里您也可以只使用单个 xib 文件。只需像 UIView、UIButton 的坐标一样以编程方式设置整个代码。【参考方案3】:

有什么捷径吗?

这在一定程度上取决于您希望应用的外观和工作方式。如果您希望无论屏幕大小如何,用户界面都大致相同,那么您可能只需调整不同元素的大小和位置即可。但是,更多时候,您会希望充分利用可用的屏幕空间,因此您将在比您更大的屏幕上拥有更多不同的内容在较小的屏幕上。在这些情况下,确实没有捷径可走:您需要仔细考虑应用在每台设备上的运行方式。

即使您确实希望本质上在所有设备上使用相同的 UI,对于为每个设备使用单独的 .xib 文件仍有很多话要说。一旦您知道您想要在屏幕上显示哪些 UI 元素,将 .xib 组合在一起就非常快速和容易。拥有单独的 .xib 可以让您针对每种尺寸微调 UI。实际上,每个屏幕通常只需要两个 .xib——一个 iPad 大小的 .xib 和一个 iPhone 大小的 .xib。自动布局系统功能强大,可以让您在 iPhone 4 和 iPhone 5 大小的屏幕之间进行调整。

【讨论】:

以上是关于如何使应用程序的设计与 iPhone4/iPhone5/iPad 兼容?有啥捷径吗?的主要内容,如果未能解决你的问题,请参考以下文章

altium designer中如何使机械层与禁止布线层重合

关于如何使看门狗程序意识到并处理其中一个病房的退出代码的设计理念

设计模式学习笔记(十六:桥接模式)

当 Figma 设计文件一直在变化时,您如何使部署的 Tailwind 代码保持最新?

如何改进我的 XML 设计使其看起来更好

如何使卡片小部件在设计中可触摸?