目前项目中需要解决的问题是:

  • 兼容iOS7和iOS8,之前的版本不需要支持了
  • 实现兼容3.5、4、4.7和5.5寸屏幕,竖屏的Lauch Screen

创建所需的PNG图片

有关iPhone6/6+相关尺寸见这里

需要如下尺寸图片:

  • 用于iPhone6+的1242x2208,或者1080x1920,也就是Retina HD 5.5
  • 用于iPhone6的750x1334,也就是Retina HD 4.7
  • 用于4寸屏(iPhone5/5s)的640x1136,就是Retina 4
  • 用于3.5寸(iPhone4/4s)的640x960,就是2x

使用LaunchImage

使用LaunchImage,可以兼容iOS7和iOS8。

因为iOS8也会调用LaunchScreen.xib,所以我的做法是直接删除它。就是这个文件:

然后,在Images.xcassets中创建一个LaunchImage

需要在项目属性里,launch Images Source里设置为LaunchImage

测试了一下:

  • iPhone6+使用的是Retina HD 5.5
  • iPhone6使用的是Retina HD 4.7
  • iPhone5s使用的是Retina 4
  • iPhone4s使用的是2x

使用LauchScreen.xib

这是Xcode6/iOS8的新功能,也就是说,这个步骤,是为了支持iOS8的,而不支持iOS7。其实在目前的项目用不上,不过做了技术准备,就写下来吧。

看到这个方形的xib文件,怪怪的,这是为了支持横屏和竖屏的,因为这个项目只需要竖屏,也可以这样:

不改也没关系。

Images.xcassets里创建backgroundImage

LaunchScreen.xib中加一个图片,用刚刚创建的backgroundImage

测试一下,iOS8下面的Launch Screen都没有问题了:

  • iPhone6+用的是3x
  • iPhone5s用的是Retina 4 2x
  • iPhone6和iPhone4s都是用的2x

因此我没有添加1x的图片,基本没用。

结论

  • 目前比较好的方式是使用Launch Image的方式创建各种设备的图片文件,兼容iOS7/8
  • 使用LaunchScreen.xib,功能更强大,但是仅支持iOS8,可能再过几年可以成为主流方法

源代码见这里:GitHub,是使用LaunchImage的方式。

转:Launch Screen在iOS7/8中的实现的更多相关文章

  1. Launch Screen在iOS7/8中的实现

    Launch Screen在iOS7/8中的实现 目前项目中需要解决的问题是: 兼容iOS7和iOS8,之前的版本不需要支持了 实现兼容3.5.4.4.7和5.5寸屏幕,竖屏的Lauch Screen ...

  2. iOS开发-Launch Image和Launch Screen

    Launch Image是App的启动图片,LaunchScreen是iOS8之后的功能,两者都可以设置app的启动图片.iOS8之后官方的推荐了使用Launch screen.xib,在xib的中通 ...

  3. iPhone launch screen,self.view.frame.size

    在工程文件中找到以下设置 "Launch Screen File"只支持iOS8以上版本,如果用之,则self.view.frame.size返回的结果为正常的当前view尺寸. ...

  4. iOS7开发中的新特性

        iOS7到现在已经发布了有一段时间了.相信你现在已经了解了它那些开创性的视觉设计,已经了解了它的新的API,比如说SpirteKit,UIKit Dynamics以及TextKit,作为开发者 ...

  5. Applications using Launch Screen Files and targetting iOS 7.1 and earlier need to also include a Launch Image in an Asset Catalog.

    在使用xcode6建的项目时,有时在ios7模拟器下会出现一下情况 导航栏上方和tabbar下方会有黑边 并且会有一下警告: Applications using Launch Screen File ...

  6. xCode5 在ios7模拟器中出现__cxa_throw _pthread_exit错误

    xCode5 在ios7模拟器中出现__cxa_throw _pthread_exit错误 2013年10月28日 ⁄ 综合 ⁄ 共 233字 ⁄ 字号 小 中 大 ⁄ 评论关闭   在项目中用模拟器 ...

  7. ios 2017启动页(Launch Screen Images)、图标(App Icon)尺寸大小

    ios 2017启动页(Launch Screen Images).图标(App Icon)尺寸大小   iPhone Portrait iOS 8,9-Retina HD 5.5 (1242×220 ...

  8. iOS欢迎界面Launch Screen动态加载广告

    有许多应用程序在打开的时候,欢迎界面会加载一张连网获取的广告图片或者显示一组动画,这样的效果是如何做到的呢?下面给大家介绍一种简单的实现加载广告的方式. 程序运行起来,欢迎界面之后,会进入AppDel ...

  9. CONTROLS: <> TYPE TABLEVIEW USING SCREEN<>.在 ABAP/4 中声明表格 控制

    在 ABAP/4 中声明表格 控制 在屏幕中使 用表格控制 时,必须在 ABAP/4 程序中同时 声明表格控 制结构和表 格控制字段 . 例如: TABLES:   SFLIGHT. CONTROLS ...

随机推荐

  1. The Begining

    学习记录之旅,就此开始.软件工程,Java神马的统统到我碗里来.

  2. WebGL学习笔记(二)

    目录 绘制多个顶点 使用缓冲区对象 类型化数组 使用drawArrays()函数绘制图形 图形的移动 图形的旋转 图形的缩放 绘制多个顶点 使用缓冲区对象 创建缓冲区对象 var vertexBuff ...

  3. thinkphp 学习1-模型

    1.用M()方法创建模型类 $model = M("configsettings"); 2.使用find()方法或select()方法返回结果集 find()只返回一行记录,sel ...

  4. 怎样利用好单片机上的存储器资源来实现OD的存储与访问

    转自:http://www.cnblogs.com/winshton/p/4897789.html 我们知道OD(对象字典)是CANopen的核心,所有功能都是围绕它开展的,是协议栈的数据中心,良好的 ...

  5. beta发布的评论

    1. 组名:飞天小女警 项目名:礼物挑选小工具 评价:对于我们学生来说,选礼物小工具相对来说新颖,小组添加了前十名热门礼物的推荐.发布到服务器上了,未来也有很多选择的空间可以做成礼物挑选手机app,也 ...

  6. HDU 2123 An easy problem

    http://acm.hdu.edu.cn/showproblem.php?pid=2123 Problem Description In this problem you need to make ...

  7. MYSQL中可以实现类似IF判断的方法

    MYSQL中可以实现类似IF判断的方法 新建一张客户表,如下:sex:1-男,2-女,3-未知:level是客户的级别:1-超级VIP客户,2-VIP客户,3-普通客户 方式一:case函数:流程控制 ...

  8. Longest Substring with At Most Two Distinct

    Given a string, find the length of the longest substring T that contains at most 2 distinct characte ...

  9. Hibernate 注解之 @Temporal

    因为数据库中有个 Date类型的数据,在从数据库中获取数据[就是getXxx方法,当然,自动装配的时候可以直接写在字段上,但也只是针对getXxx方法,不会自动赋值]的时候可以利用这个 @Tempor ...

  10. Qt 删除目录

    删除目标的目录,若该目录下有子目录,一并删除. //判断是否存在子目录 bool judgeDir(QDir dir) { dir.setFilter(QDir::AllEntries | QDir: ...