您的位置:首页 > 移动开发 > IOS开发

IOS6和IOS7的适配问题

2015-11-18 14:29 120 查看
之前做的项目支持的最低版本为IOS6.0,所以整理一些IOS6的适配问题(IOS6和IOS7)之间的区别.

IOS6和IOS7的坐标:

IOS6视图View 的坐标是从导航栏(高度 44)下面开始计算的,没有导航栏的坐标是从状态栏下面开始计算坐标.

IOS7视图View 的坐标是从状态栏(高度 20)下面开始计算.没有导航栏的情况下坐标是从左上角开始计算的. IOS7 中苹果引入了一个新的属性 setEdgesForExtendedLayout, 它的默认值:UIRectEdgeAll,如果容器是navigationController, 默认的布局是从导航栏的顶部开始的也就是状态栏的底部, 所以所有的UI元素会往上移动 44pt.

IOS7 中如果希望视图是从导航栏的下面开始的解决办法如下:

self.edgesForExtendedLayout = UIRectEdgeNone;

这样就可以达到和IOS6 一样的效果.

2.IOS6 比如:UILabel的background的背景颜色默认是白色

IOS7 下面UILabel的背景颜色是:clearColor 所以为了在IOS6和IOS7都能达到完美的效果都 设置为:clearColor.

3.IOS6中模态出的ViewController,默认是全屏的,在IOS7系统中药获得相同的效果,可以这样设置:

- (BOOL)prefersStatusBarHidden

{

return YES;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: