Xcode6在iPhone5+iOS7模拟器上编译时上下有黑边
来源:互联网 发布:淘宝 二手 编辑:程序博客网 时间:2024/05/01 21:51
问题描述:
Xcode6环境下,对iPhone5或iPhone5s模拟器,在iOS7或iOS7.1下运行,屏幕上下有黑边。在iOS8下没问题。
问题分析:
这种熟悉的场景又出现了,上一次遇到这种情景已经可以追溯到两年前,iPhone5刚刚问世的那段时间,在3.5inch屏幕上的程序如果不添加568h的default.png,在4inch屏上运行就会出现这种上下留"白"的状况。
而如今已经到了iPhone6和iPhone6Plus的时代,这种情景竟然又出现了。
其实可以发现,不只是上下留白的问题,在这种状态下Launch Screen其实根本没有加载。
原因可想而知了。
Xcode6在Xcode5的基础上,做出的一些调整,其实并不是向下兼容的。Xcode5在启动页通过images asset进行管理,而到了Xcode6,苹果引入了一种新的启动页机制:LaunchScreen.xib,而这种机制恰恰是不向下兼容的。Xcode6已经自动为iPhone6以上的模拟器强制使用iOS8+系统,iPhone 6 (7.1)这种模拟器是不存在的(至少我没有找到),因此对于iPhone 6以上的模拟器,不存在这个问题,对于iPhone 4s模拟器,在iOS7.1下也仅仅是没有加载LaunchScreen.xib,这种苹果最为古老的屏幕尺寸当然不存在留白的状况。但对于iPhone5/5s + iOS7/7.1,由于iOS7无法兼容LaunchScreen.xib这种机制,而又找不到对应的default-568h.png文件,问题自然就出现了。
问题解决:
在项目配置页,General下面有一栏App Icons and Launch Images,其中有一项Launch Images Source,如果你遇到了问题,那么旁边显示的可能是一个按钮,Use Asset Catalog,点一下然后确定就可以了,会在项目中的Images.xcassets中生成LaunchImage,就像Xcode5中那样。此时再运行程序,已经不会再有上下的黑边问题了。但为了更好的用户体验,做张图片放进去吧。当然,在iOS8中依然会加载LaunchScreen.xib,看来至少二者是可以共存的。
问题延伸:
如果你想删掉这套启动图,仅仅是删除Images.xcassets中的LaunchImage是不行的,还要在项目配置,Build Settings中找到Asset Catalog Launch Image Set Name(搜索asset可以帮你快速定位到这项),把后面的值删掉。否则编译都通不过,会报错Images.xcassets: None of the input catalogs contained a matching launch image set named "LaunchImage"。
- Xcode6在iPhone5+iOS7模拟器上编译时上下有黑边
- Xcode6在iPhone5+iOS7模拟器上编译,上下有黑边问题
- Xcode6在iPhone5+iOS7模拟器上编译,上下有黑边问题
- Xcode6在iPhone5+iOS7模拟器上编译,上下有黑边问题
- Xcode6在iPhone5+iOS7模拟器上编译,上下有黑边问题
- Xcode6在iPhone5+iOS7模拟器上编译,上下有黑边问题
- Xcode6在iPhone5+iOS7模拟器上编译,上下有黑边问题
- Xcode6在iPhone5+iOS7模拟器上编译,上下有黑边问题
- Xcode6在iPhone5+iOS7模拟器上编译,上下有黑边问题
- Xcode6在iPhone5+iOS7模拟器上编译,上下有黑边问题
- Xcode6在iPhone5+iOS7模拟器上编译,上下有黑边问题的解决方案
- Xcode6在iPhone5+iOS7模拟器上编译,出现上下有黑边问题
- iPhone5/5s+iOS7模拟器上编译,上下有黑边问题,显示异常的问题解决
- Swift开发教程--Xcode6在iPhone模拟器上编译上下留有黑块问题
- Xcode6程序运行在iphone5模拟器上有黑边
- iphone5 ios7.1 上下有黑边 解决方案
- Xcode6里面ios7.0模拟器运行程序时上下出现黑边的问题
- Xcode6 上iphone5的模拟器不能全屏的问题
- drupal节点标题的自动生成
- 3d数学基础-镜像矩阵和切变矩阵-用C++代码实现
- Android TV 不同种类的遥控器的适配
- Java基础--获得系统当前时间
- Codeforces 547 B - Mike and Feet (单调栈)
- Xcode6在iPhone5+iOS7模拟器上编译时上下有黑边
- java中面向对象中的一些小知识点
- CLASS选择器的语法
- 再回首,数据结构——线性表、链表上的常见算法
- Java实现Excel导入数据库,数据库中的数据导入到Excel
- 页面布局--变化型
- Visio中UML类图符号说明及使用简介
- springMVC框架结构
- unity商店demo学习:跑酷游戏