zoukankan      html  css  js  c++  java
  • Launch Screen在iOS7/8中的实现

    Launch Screen在iOS7/8中的实现

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

    • 兼容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的方式。

  • 相关阅读:
    Unity动态批处理和静态批处理学习
    Mac下Unity使用Jenkins自动化打包
    Mac 环境环境下安装Git与使用(码云)
    MySQL: 6、MySQL语句
    MySQL: 5、MySQL索引、视图、存储过程
    MySQL: 4、多表、外键、数据库设计
    MySQL: 3、SQL语言 ②约束、事务
    MySQL: 2、SQL语言 ①概念、分类
    MySQL: 1、MySQL基础
    Mac 系统下如何显示和隐藏文件
  • 原文地址:https://www.cnblogs.com/sidesky/p/5073932.html
Copyright © 2011-2022 走看看