由Single View Application项目删除storyboard生成纯代码Empty Application模板
从项目中删除 LaunchScreen.storyboard
和 Main.storyboard
:
-
从
Info.plist
中删除 Launch screen interface file base name 和 Main storyboard file base name。- 对应 Genenal | App Icons and Launch Images | Launch Screen File
- 对应 Genenal | Deployment Info | Main Interface
-
删掉 Launch Screen File 之后,启动屏幕大小总是 320x480。
上下有黑条,且点击黑条部分报错:
unexpected nil window in _UIApplicationHandleEventFromQueueEvent,
_windowServerHitTestWindow: <UIClassicWindow: 0x7fc798411d80; frame = (0 0; 375 667); userInteractionEnabled = NO;
原因分析:
由于5/5s上市时,需要兼容之前版本的App,同时要减少适配的开发成本。 最后就出了唯一的一个判断标准:如果有相应设备尺寸的开机图,系统就当该App针对新设备做过适配,否则就按照320x480来计算,然后在iPhone5/6的模拟器屏幕上下自动补黑条。
解决方案:
向工程同名目录添加启动图片:
- iPhone4/4s: Default@2x.png(640*960)
- iPhone5/5s: Default-568h@2x.png(640*1136)
- iPhone6: Default-375w-667h@2x.png(750*1334)
- iPhone6+: Default-414w-736h@3x.png(1242*2208)
《从项目中删除storyboards》 《iOS8 launch image的设置方法》 《iPhone6(+)适配LaunchImage》 《增加Default-568h@2x.png支持iPhone5》 《Xcode6在模拟器iPhone5/iOS7的版面上下黑边》