iOS7发布了,并且Apple官方给开发者也发邮件了,在2014年2月1号以后先上传App必须适配iOS7。
自己也一直在做App开发,也遇到这方面的问题,在网络上遇到了就转过来,做个记录,分享。转的Jack博客,原文链接在http://www.pailixiu.com/blog/?id=28
解决iOS7适配的问题,层出不穷的问题,我在下面一一列出来
经常有人问:我想在iOS7系统的设备上运行起来像在iOS6设备上运行的样式一样,布局不改变。
经常有人问:为什么我的静态栏在视图的上面,而不像在iOS6上留出20,(既是40个像素,这个会和设置导航条背景图有关系,后续再解释)
经常有人会问:为什么我的视图向上移动了20,底部留出20的空白条
或许也会有人问:为什么我用UIScrollView的是时候,UIScrollView的子视图向下移动了一些位置,(经过我测试,是移动了64),注意:这种情况的时候,大家都是用了导航控制器来做框架的
解决方案:
解决问题1:
只要在xcode的版本中不带有iOS7SDK的版本下编译,比如xcode4.x,xcode4.x是不会有iOS7SDK的东西,所以你编译出来根本就是iOS6.x的样式,所以只要不要用带有iOS7SDK的xcode版本下编译,生成包,上传到App Store就可以解决问题了
解决问题2:
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_7_0
- (BOOL)prefersStatusBarHidden {
return NO;
}
- (UIStatusBarStyle)preferredStatusBarStyle {
return UIStatusBarStyleLightContent;
}
#endif
再加入初始化window的时候,self.window = [[UIWindow alloc] initWithFrame:CGRectMake(0,20,320,480-20)];就解决了