iOS13 LaunchScreen.storyboard 启动图屏幕适配

ios13开始,苹果要求使用LaunchScreen.storyboard来设置启动图了。之前因为启动页比较简单,一张图就可以了。拉不拉伸看不大出来。如果启动图内容过多的话,就很明显看到会有拉伸了,所以一张图是不够的。

  1. 在Assets里创建Image


    image.jpeg

  2. 直接将需要适配的不同尺寸的启动图到刚才创建的imageset中;
    或者偷懒的话直接将原来LaunchImage.launchimage里面的json文件和启动图


    image.jpeg


    直接拖到新创建的imageset中覆盖替换。


    image.jpeg

  3. 如果不是直接从LaunchImage.launchimage拖json文件进来的,去编辑Contents.json文件,把图中内容


    image.jpeg

    替换为如下的内容,并根据你的具体情况,修改一下下面内容里面的对应不用尺寸下的启动图片名

    "idiom" : "iphone",
    "scale" : "1x"
    },
    {
    "idiom" : "iphone",
    "filename" : "iPhone4.png",
    "scale" : "2x"
    },
    {
    "idiom" : "iphone",
    "subtype" : "retina4",
    "scale" : "1x"
    },
    {
    "idiom" : "iphone",
    "filename" : "iPhone5s.png",
    "subtype" : "retina4",
    "scale" : "2x"
    },
    {
    "idiom" : "iphone",
    "filename" : "iPhone8P.png",
    "subtype" : "736h",
    "scale" : "3x"
    },
    {
    "idiom" : "iphone",
    "filename" : "iPhone8.png",
    "subtype" : "667h",
    "scale" : "2x"
    },
    {
    "idiom" : "iphone",
    "filename" : "IPhoneX.png",
    "subtype" : "2436h",
    "scale" : "3x"
    },
    {
    "idiom" : "iphone",
    "filename" : "iPhone XS Max.png",
    "subtype" : "2688h",
    "scale" : "3x"
    },
    {
    "idiom" : "iphone",
    "filename" : "iPhone XR.png",
    "subtype" : "1792h",
    "scale" : "2x"
    }```
    
    
  4. 然后在LaunchScreen.storyboard里直接拖入ImageView布局。并填入对应的imageset名字。


    image.jpeg

至此,适配基本就完成了。如果你要确认在不同机型上有没有使用对应的图的话,可以在图上做一下标记,看看使用的图是不是对应的。如下图


image.jpeg


启动页替换大概会有缓存的问题。替换后测试的话,记得多手动删除app,多清理缓存。
另外还能想到的做法,就是把启动页的内容细分,当做一个页面而不是图去做适配吧?

你可能感兴趣的:(iOS13 LaunchScreen.storyboard 启动图屏幕适配)