Skip to main content

 路由器设置 > 新闻资讯 >

如何解决iOS7的适配问题

2014-01-25 21:40 浏览:

关于iOS7的适配这个问题自iOS7发布以来就一直是众多iOS开发者热议的话题,网上的对于这个问题也是众说纷纭。有的说这是Xcode5 iOS7SDK的bug,但是苹果坚决不承认这是bug,而且规定新发布的应用必须针对iOS7进行适配,否则坚决不让上线。。。mark。。。好苦逼啊。。。

网上关于iOS7屏幕适配的问题的文章比比皆是,第一次做iOS7的适配的时候我也是多走了很多弯路,遇到了很多奇葩的问题。比如说你可能已经做好了适配,但是调用拍照功能弹出IMageViewController的时候就会出现奇葩问题。

那么关于iOS7的适配问题有两种解决方案:

1.完全隐藏状态栏。但是这样做的代价是,你的应用如果用导航条的话,你必须考虑到这一点。

2.显示出状态栏。

我主要说说第二种解决方案:

 在AppDelegate中加入如下的代码:

if([[[UIDevicecurrentDevice]systemVersionfloatValue]>6.1){

        //根据屏幕大小设置windowframe

        if(ScreenHeight ==480){

            self.window.frame =CGRectMake(0,20,320460);

        }else if(ScreenHeight ==568){

            self.window.frame =CGRectMake(0,20,320548);

        }

    }

        然后在需要适配的视图控制器中加入如下代码:

 

#pragma mark--iOS7&iOS6适配--

- (UIStatusBarStyle)preferredStatusBarStyle

{

    returnUIStatusBarStyleLightContent;

}

- (BOOL)prefersStatusBarHidden

{

    return NO;

}

        这样就完成了iOS7的适配,而且不会因为调用ImageViewController而使适配失效。希望能对大家有所帮助。。。挂上一技术交流群。。。欢迎各位iOS开发者加入。QQ技术交流答疑群号:209476515