如何让你的App适配iOS7?
2013-10-24 16:38
435 查看
随着苹果在2013年9月18日发布iOS7最新的系统以来,iOS各种设备升级到iOS7的数字就已经不断刷新记录。目前据外界统计iOS7设备装机量已经达到2.5亿部,已占iOS设备的64%。由此可见让自己的app适配到iOS7是如此的重要。下面就说一下采取哪种方法能让你的app适配iOS7的要求。
第一种,你的app使用自带的UINavgationController的导航栏
众所周知,iOS7的标题栏(statusbar)已经和视图重叠在一起,所以y坐标的值有所改变。从而导致原来的app头部坐标向上偏移,而不是显示在正确的位置。如果你的app使用了下面的特性如下:
那么恭喜你,你只需要在你的ViewController里面的ViewDidLoad里面加入下面这句话就可以完成了适配:
然后你的app导航栏和状态栏的位置就已经恢复正确了。
第二种:你没有用系统自带的导航栏而是自己贴视图(View)模拟成导航栏的样子:
这种情况你就需要在AppDelegate文件里加入下面的代码:
如果你用到了pushViewController的方法,别忘记在目的视图的ViewDidAppear里面加入下面的代码:
这样你的app也已经完成了适配。其实适配起来也还算蛮方便的。最后展示一下我的app在iOS7下面的效果。
参考资料:
iOS 7 status bar back to iOS 6 style?
适配iOS7开发
适配iOS7开发2
第一种,你的app使用自带的UINavgationController的导航栏
众所周知,iOS7的标题栏(statusbar)已经和视图重叠在一起,所以y坐标的值有所改变。从而导致原来的app头部坐标向上偏移,而不是显示在正确的位置。如果你的app使用了下面的特性如下:
那么恭喜你,你只需要在你的ViewController里面的ViewDidLoad里面加入下面这句话就可以完成了适配:
self.edgesForExtendedLayout = UIRectEdgeNone;
然后你的app导航栏和状态栏的位置就已经恢复正确了。
第二种:你没有用系统自带的导航栏而是自己贴视图(View)模拟成导航栏的样子:
这种情况你就需要在AppDelegate文件里加入下面的代码:
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) { [application setStatusBarStyle:UIStatusBarStyleLightContent]; self.window.clipsToBounds =YES; self.window.frame = CGRectMake(0,20,self.window.frame.size.width,self.window.frame.size.height); self.window.bounds = CGRectMake(0,0, self.window.frame.size.width, self.window.frame.size.height); [[NSUserDefaults standardUserDefaults] setFloat:self.window.frame.size.height forKey:@"windowHeight"]; }
如果你用到了pushViewController的方法,别忘记在目的视图的ViewDidAppear里面加入下面的代码:
-(void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) { CGRect frame=self.view.frame; if (frame.size.height==[[NSUserDefaults standardUserDefaults] floatForKey:@"windowHeight"]) { frame.size.height-=20; } self.view.frame=frame; } }
这样你的app也已经完成了适配。其实适配起来也还算蛮方便的。最后展示一下我的app在iOS7下面的效果。
参考资料:
iOS 7 status bar back to iOS 6 style?
适配iOS7开发
适配iOS7开发2
相关文章推荐
- 如何让ios7的app同时适应ios6,即ios6与ios7的适配问题
- 如何让App适配iOS7(草稿)
- iOS7 兼容适配 如何判断版本号
- 教你如何升级app适配iOS 7
- android中如何使用一张图片适配不同尺寸的APP引导页
- iOS 的 APP 在系统中如何适配不同的屏幕的尺寸
- App如何适应 iPhone 5s/6/6 Plus 三种屏幕的尺寸?(iOS的屏幕适配问题)
- iOS7之后如何获得APP唯一的身份标识
- 教你如何升级app适配iOS 7
- App如何适配Jelly Bean 和 Nexus 7
- APP IOS6 适配iOS7开发技巧
- 教你如何升级app适配iOS 7
- 如何快速适配iPhone6及iPhone+ APP UI?
- AppCompatActivity的魔术——如何做到适配新控件
- APP如何设计才能适配iPhone6/Plus和iPhone5?
- ios7适配——push时出现阴影时如何解决
- 教你如何升级app适配iOS 7(转自cocoaChina)
- [Android]如何做一个崩溃率少于千分之三噶应用app(24)--组件化的Kotlin适配
- 教你如何升级app适配iOS 7
- 教你如何升级app适配iOS 7