我可以使用单个XIB为iPhone和iPad创建全分辨率界面吗?

时间:2011-11-20 11:40:36

标签: iphone ios interface-builder

我想在UISplitView中加载一个iPhone XIB,但它应该调整到iPad的全屏......我该怎么办?我不想转换XIB本身!

我已经阅读了所有其他解决方案,但我不想要第二个XIB,我只是想在iPhone和iPad上以特定尺寸显示它。

因此,如果我使用UISplitView将其加载到iPad上,它应该是全尺寸的,如果我将它加载到iPhone上,它应该只有iPhone的大小。

2 个答案:

答案 0 :(得分:2)

首先,没有UISplitView这样的东西。

来自文档:

UISplitViewController类是一个容器视图控制器,用于管理两个并排视图控制器的显示。您可以使用此类来实现主 - 详细信息界面,其中左侧视图控制器显示项目列表,右侧显示所选项目的详细信息。拆分视图控制器仅适用于iPad设备。尝试在其他设备上创建一个会导致异常。

所以UISplitViewController只是一个容器。您只需将主视图控制器和详细视图控制器传递给它。主视图将以纵向显示在弹出控制器中。

我认为我误解了你或你的方法是错的。 iPhone上不支持此类的原因是因为它没有任何意义。你不能只是“调整分割视图的大小”或其他什么,你必须单独为手机重新设计你的界面。在不知道你在做什么的情况下,很难给你任何具体的建议。弄清楚你想要实现什么,有一个设计,为每个设备制作单独的笔尖,并尝试尽可能多地重用代码和视图。

答案 1 :(得分:0)

Matt Gemmell编写了一个SplitViewController,您可以将其用作iPad的子视图(http://mattgemmell.com/2010/07/31/mgsplitviewcontroller-for-ipad/)。如果你也可以在iPhone上使用它,你可以查看来源。我发现源太重了,我只是创建了一个UITableView,在选择行时加载其他视图(一种假的splitview)。