管理iPhone 5和其他版本之间的屏幕高度差异的最佳方法是什么?
如果我们使用storyboard或xib,它会相应调整大小。但如果整个视图是以编程方式构建的,那么我们如何处理这个问题。
目前,我所做的是获得整个屏幕高度,并根据此高度设置其余UI元素,如高度* .7或高度* .5 ..
但它仍然没有给我最好的体验。
谢谢,
答案 0 :(得分:4)
您可以检查[UIScreen mainScreen].bounds.size.height
(可能是,将其用作静态方法或执行#define
)并根据屏幕高度进行屏幕设计。另一种方法是使用view.autoresizingMask
属性来调整视图。
例如: -
view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
如果您要为iOS 6构建,则可以使用Auto layout功能。
答案 1 :(得分:3)
在你的viewDidLoad中查看屏幕尺寸就像这样...
- (void)viewDidLoad
{
[super viewDidLoad];
CGRect screenBounds = [[UIScreen mainScreen] bounds];
if (screenBounds.size.height == 568)
{
//iPhone 5
}
else
{
// iPhone 4
}
}