研究了5个小时的iPhoneX适配。 从catalog,storyboard,safearea等一系列文章中发现。
如果我们想完全撑满全屏。那直接建一个storyboard就好了。
但撑满全屏后,流海就是一个恶心的问题。

思索半天后,我们发现,其实我们想要的。并不是撑满。 而是要去除留海部分。
那有没有一种办法,干脆就让我们的iPhoneX达到和iPhone6一样的显示效果呢。 或许这才是我们想要的。 下面的代码,放入每一个场景的onLoad中,靠热更新,就能支持iPhoneX了,效果不要不要的。(思路就是,iPhoneX下面,用ShowAll)

    if(cc.sys.isNative && cc.sys.platform == cc.sys.IPHONE){
var size = cc.view.getFrameSize();
var isIphoneX = (size.width == 2436 && size.height == 1125)
||(size.width == 1125 && size.height == 2436);
if(isIphoneX){
var cvs = this.node.getComponent(cc.Canvas);
cvs.fitHeight = true;
cvs.fitWidth = true;
}
}

总结一下步骤

1、新建一个Laucn Screen.storyboard
2、删除所有View下面的内容,SafeArea也要去掉
3、General里面,使用这个Launch Screen作为加载屏

这里想要达到最好的效果,还有设计分辨率有关。
比较推荐的是 1280 x 640. 在其他设备上,默认使用 定宽策略。 也就是说,高度上做自适应。 背景图做成 1280 x 960 就可以适配到iPad了。 (如果之前用的是1280 x 720的设计分辨率,也不打紧。勉强可以用)。
1280 x 640的设计分辨率,见下图。

 

 

之前为了适配ipad也是用的这招!只不过上下会有黑边,但游戏内容一览无余。

        let isNotFit = cc.winSize.width / cc.winSize.height <= 1.65;
let canvas = this.node.getComponent(cc.Canvas);
if (isNotFit) {
canvas.fitHeight = true;
canvas.fitWidth = true;
}
 
 
 
 
 
 

iPhoneX快速适配,简单到你想哭。的更多相关文章

  1. 快速部署简单私有云CloudStack(上)

    前言: 亲身用了大半年,没出过重大毛病,也就是服务挂了,跟服务器也没啥关系.如果想更深入学习cloudstack可以试试高级网络,我是一直用的简单网络(扁平网络). 由来:CloudStack的前身是 ...

  2. 使用vue-cli3快速适配H5项目

    跟我老大学到了一招使用vue-cli3快速适配H5项目的方法. 我之前也有进行一个版本的适配,直接使用cnpm install -g vue-cli,然后安装各种插件进行适配,见我之前的博客. 后来老 ...

  3. 拿nodejs快速搭建简单Oauth认证和restful API server攻略

    拿nodejs快速搭建简单Oauth认证和restful API server攻略:http://blog.csdn.net/zhaoweitco/article/details/21708955 最 ...

  4. iOS开发——适配篇&App适配简单概括

    App适配简单概括 1:适配:适应.兼容各种不同的情况 系统适配 针对不同版本的操作系统进行适配 屏幕适配 针对不同大小的屏幕尺寸进行适配 在用户眼中 屏幕是由无数个像素组成的 像素越多,屏幕越清晰 ...

  5. 使用Django快速搭建简单的数据管理后台

    使用Django快速搭建简单的数据管理后台 概述 需求描述: 数据表已建好,能可视化操作增删改查,避免直接操作数据库 简版的管理系统 环境 Windows 10 x64 Python 3.6.3 (A ...

  6. [Xcode 实际操作]九、实用进阶-(25)使用Storyboard(故事版)的约束功能,使项目快速适配各种分辨率的设备

    目录:[Swift]Xcode实际操作 本文将演示使用故事版的约束功能,使项目快速适配各种分辨率的设备. 在项目导航区打开并编辑主故事版[Main.storyboard]. 在当前故事版中,已经存在一 ...

  7. 苦酒入喉心作痛,红酒入鹅鹅想哭——震惊!勒索病毒想哭靠wine感染了Ubuntu16.04

    都说linux能免疫win的病毒来着…… 今天作死,逛贴吧时好奇下载了一个想哭2.0 (http://pan.baidu.com/share/link?shareid=1393367320&u ...

  8. 从蓝瘦“想哭”到 SELinux 看操作系统安全何在

    最近一周,来自网络的"想哭"勒索病毒(Wannacry Ransomware)在世界各地同时上演了一部绑匪大片,台词华丽,演技出色,当仁不让地新晋世界第一网红.全球各国除了默默忙于 ...

  9. 使用Redis bitmaps进行快速、简单、实时统计

    原文:Fast, easy, realtime metrics using Redis bitmaps (http://blog.getspool.com/2011/11/29/fast-easy-r ...

随机推荐

  1. 解决“Comparison method violates its general contract!”

    The ONE跑MaxProp.Prophet可能(取决于你JDK的版本)会报“java.lang.IllegalArgumentException: Comparison method violat ...

  2. C#WebService服务在Windows7的部署

    (一)C#WebService服务在Windows7的部署  一.在控制面板,程序与卸载中安装IIS组件. 二.IIS无法显示WebService的.asmx文件.解决办法:注:(这里可以不用考虑,直 ...

  3. Houdini技术体系 基础管线(四) :Houdini驱动的UE4植被系统 上篇

    背景 之前在<Houdini技术体系 过程化地形系统(一):Far Cry5的植被系统分析>一文中已经对AAA游戏中过程化植被的需求有了一定的定义,后续工作就是如何用Houdini开发功能 ...

  4. Houdini技术体系 基础管线(二) :Heightfiled与UE4的无缝导入以及对World Composition的支持

    Authored by TraceYang 前言    传统的制作做比较真实大世界3D关卡地形时,通常的采用的方式是把HeightMap和SplatMap(Layer Mask)导入到引擎的地形系统里 ...

  5. JavaScript学习历程03

    一闪一闪亮晶晶 <script type="text/javascript"> var nn = Number(prompt('请输入一个1-9的正整数!')); va ...

  6. 自定义GridView实现分割线解析

    前两天在些项目的时候碰到常用的GridView要实现一些分割线,之前就是用本方法利用listView和Item的背景颜色的不同线显示分割线.这是最low的一种做法.于是我就简单的写了一个自定义的 Gr ...

  7. javap的使用

    今天听的分享里在介绍String时,提到了javap,学习了好久的java,但是好像从来没有了解过这个工具. javap是JDK提供的一个命令行工具,javap能对给定的class文件提供的字节代码进 ...

  8. php 实现一致性hash 算法 memcache

    散列表的应用 涉及到数据查找比对,首先考虑到使用HashSet.HashSet最大的好处就是实现查找时间复杂度为O(1).使用HashSet需要解决一个重要问题:冲突问题.对比研究了网上一些字符串哈希 ...

  9. CF 1131C Birthday

    C. Birthday time limit per test 1 second memory limit per test 256 megabytes input standard input ou ...

  10. Mac - 如何安全地还原 Mac 的默认字体

    为清理mac系统内存,下载了daisydisk for mac 破解版,然后发现mac所有的字体都被清理了,所有汉子都变成了问号❓和方框.... 在通常情况下,遇到字体显示不正常,甚至乱码时,重置总是 ...