0

我正在制作一个 iPhone 应用程序,并且我在大部分 UI 中使用故事板。我正在为 iOS 6 使用 xCode 4.6。

有没有办法让应用程序同时适用于 iphone4 尺寸和 iphone5 尺寸?

当我在 iPhone 4 模拟器上运行该应用程序时,它看起来不像它应该的那样 - UI 元素看起来不像它们在情节提要上所做的那样(我假设它使用 iPhone5 尺寸)。

如果您需要更多信息,请告诉我。

4

1 回答 1

1

您可以动态访问视图和设备的高度,然后根据这些值进行调整。或者,您可以使用 iOS 6 的约束在设备底部或其他元素之间设置边距。

要实现前者,只需访问视图的高度属性:

CGFloat height = [[self view] frame].size.height;

您还可以像这样获取设备屏幕的高度:

CGFloat deviceHeight = [[UIScreen mainScreen] bounds].size.height;
deviceHeight -= 20; // remove the tab bar
deviceHeight -= 44; // remove height for a navigation bar?

现在想象一下根据这个值调整视图的原点。无论您在哪个设备上,都可以让它紧贴设备底部。

[aView setFrame:CGRectMake(10, deviceHeight - 10 - 100, 300, 100)];

如果您无法调整元素的布局,请考虑使用滚动视图。只需使用上述技术设置框架,然后设置内容大小。在较小的设备上,您将能够滚动查看更多内容,而在较大的设备上,一切都在那里。

于 2013-02-28T23:26:42.167 回答