ios--ios6与ios7界面兼容(解决方案)

来源:互联网 发布:windows上运行mac应用 编辑:程序博客网 时间:2024/06/10 21:54

1、在画UI的时候,将View里面的控件位置整体向下移动20px,效果如下:


我们可以理解为view顶部留下的20px大小的空间是留给statusBar状态栏的。


2、view里面的每个控件(包括View)都要设置DeltasY= -20,这个是用于ios6与ios7视图做兼容用的。在ios6里,这个DeltasY=-20的作用就是将该view控件向上移动20px;而在ios7里,这个DeltasY=-20看视没有作用(其实在ios7中DeltasY就没有作用,我们可以理解为DeltasY的值就是在ios6里相对于ios7而上下移动的px,因为ios7的view是包含statusBar状态栏的)。


3、设置在ios6和ios7中都显示statusBar状态栏。

在ios6里的隐藏状态栏的方式为:
在AppController类的方法didFinishLaunchingWithOptions中增加以下语句:
[[UIApplication sharedApplication] setStatusBarHidden:YES];

以上方式在ios7中无效,ios7中隐藏顶部状态栏的方法为:
在RootViewController中重写方法prefersStatusBarHidden,增加以下代码:
- (BOOL)prefersStatusBarHidden
{
return YES;
}

看效果图:
ios7与ios6运行效果一致啦:



0 0
原创粉丝点击