2

管理 iPhone 5 和其他版本之间屏幕高度差异的最佳方法是什么?

如果我们使用故事板或 xib,它会相应地调整它的大小。但是如果整个视图都是以编程方式构建的,我们如何处理这个问题。

目前我所做的是获得整个屏幕高度并根据此高度设置其余 UI 元素,例如 height * .7 或 height *.5 ..

但它仍然没有给我最好的体验。

谢谢,

4

2 回答 2

4

您可以检查[UIScreen mainScreen].bounds.size.height(可能是,将其用作静态方法或执行#define)并根据屏幕高度进行屏幕设计。另一种方法是使用view.autoresizingMask属性来调整视图。

例如:-

view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

如果您正在为 iOS 6 构建,您可以使用自动布局功能。

于 2012-12-03T19:09:14.707 回答
3

在您的 viewDidLoad 中,只需检查屏幕大小就像这样......

- (void)viewDidLoad
{
   [super viewDidLoad];
    CGRect screenBounds = [[UIScreen mainScreen] bounds];
   if (screenBounds.size.height == 568)
   {
       //iPhone 5
   }
   else
   {
       // iPhone 4
   }

}
于 2012-12-04T06:52:28.153 回答