关于屏幕适配也在网上找了很多的解决方案,我也总结一下,保证自己能在以后翻出来可以不看代码就能想起完整流程。

屏幕适配,就是为了不同的机型不同的屏幕尺寸做对应的处理,接下来开始正式的流程介绍:

1.先定义一个普遍使用的分辨率,根据网上给出的统计结论,可以看到1280*720是比较通用的,以此为屏幕摄像机矩形。

一、分辨率统计

根据最新数据,目前android和ios的分辨率分布如下图1和图2所示:

图1 android分辨率分布

图2 ios分辨率分布

2.获取设备版本如果是版本为iPhone10,3或者iPhone10,6则可以判定是X,苹果官方给出的安全区概念就是让开发者可以在“安全区”内设置响应区,以避免翻转屏幕导致的响应区被刘海遮挡,这需要程序去手动修改摄像机的矩形参数

一般手机直接用1280*720,苹果要割出刘海区,new Rect(100, 0, Screen.width - 200, Screen.height)

3.NGUI已提供了适配的两把武器:UIRoot(实现等比拉升),UIAnchor &&UIWidget(实现锚点)。

做一下类比来提升一下理解:

人的眼睛就是摄像机,眼镜大小就是屏幕边界,眼镜形状不同,屏幕也就是不能统一适配的。

选一个大小合适的镜框,保证眼镜视角最大,就是基准分辨率(1280*720),

由于眼镜距离不能随意改变所以用度数来类比等比缩放等参数设置,手机屏幕想完美显示元素,需要合适的比例和布局就像眼镜需要合适的度数。布局比例不合理,就像眼镜度数不对一样,想看清是不可能的,UIAnchor和UIWidget等组件可以根据你的设置来将组件和屏幕边缘进行调整。

Unity适配总结和技巧

(1)合理选取基准分辨率,使得UI有损单元的损失最小。

(2)可以根据不同的宽高比动态调整UIRoot的基准高,确保UI无损单元的完整显示和减少有损单元损失。

(3)UIAnchor可以使用在非UIWidget的组件上,比较独立且比较方便,但是只能选择固定的Side进行偏移,灵活性不太好。UIWidget上的anchor不能独立使用,但是可以选择任意的Side进行偏移,灵活性较好。

(4)有损UI单元(例如背景图)上,尽量不要放置位置信息,因为位置信息通常属于无损信息,拉伸后不利于展示和其他UI适配。

部分内容转自Gad社区文档。

Unity中关于IphoneX的屏幕适配相关推荐

  1. Unity中2D游戏多分辨率屏幕适配方案

    一:什么是像素? 像素是由很多个小方格组成,每一个小方格上都存储了位置信息和色彩信息.像素是图像的最小单位 图像分为两类:位图和矢量图 --位图(点阵图):由多个像素组成,当放大时被分为多个色块,而且 ...

  2. 从FrozenUI中学习移动端屏幕适配问题

    屏幕适配 Oaker edited this page on 18 Mar 2016.29 revisions 原文链接:https://github.com/frozenui/frozenui/wi ...

  3. Unity 之 NGUI UIRoot 的屏幕适配问题

    UIRoot 屏幕适配 文章说明 屏幕适配 UIRoot 1.原理简述 2.举例说明 Constrained 1.原理简述 2.举例说明 源码 思考 文章说明 本篇文章基于NGUI (3.12.0)版 ...

  4. iOS屏幕适配-iOS笔记

    学习目标 1.[了解]屏幕适配的发展史 2.[了解]autoResizing基本用法 3.[掌握]autoLayout 的基本用法 4.[掌握]autoLayout代码实现 5.[理解]sizeCla ...

  5. Unity中的UGUI屏幕适配

    本文分享Unity中的UGUI屏幕适配 屏幕适配一直是一个老生常谈的问题, 虽然只是项目一开始的时候会用到, 但是还是有很多东西需要学习和了解, 今天给大家分享下一些个人的学习和总结. 各种坐标 屏幕 ...

  6. Unity中全面屏手机的屏幕适配问题

    unity打包apk 安装到手机上,在曲面屏手机上 上下会留有黑边,总是不能全面适配手机. 一般手机的屏幕纵横比为16:9,如1080x1920.1440x2560等,其比值为1.7左右,全面屏手机出 ...

  7. Unity开发游戏中全面屏手机的屏幕适配

    很多人可能把全面屏跟曲面屏混淆,其实这是两个不同的概念. 一般手机的屏幕纵横比为16:9,如1080x1920.1440x2560等,其比值为1.777777--,全面屏手机出现之前,Android中 ...

  8. Unity NGUI屏幕适配

    前段时间整理的一篇关于unity ui开发的文章,被推荐上了csdn首页,对于刚刚写文字的我来说,是莫大的鼓励,让我干劲十足,写出更多有质量的文字. 写在前面 屏幕适配是每个手机应用和游戏都会解决的问 ...

  9. html5苹果x底部满屏,iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配...

    最近写小程序时,遇到了 iPhoneX 底部小黑线与内容重叠的问题,实际上是iPhoneX安全区域的适配问题,了解清楚这个问题花了挺多时间的,也实操出了结果,忍不住来总结总结. 前言 在苹果 iPho ...

最新文章

  1. Installshield 2015 实现检测某安装文件是否存在并运行安装
  2. 「SAP技术」SAP MM ME2N报表能按‘order acknowledgement‘查询采购订单
  3. 在yii2中,让你action参数支持POST数据的小方法
  4. java ios websocket_Java WebSocket的例子
  5. Java集合框架之 Java HashMap 源码解析
  6. 如何解决IIS7上传文件大小限制【转】
  7. 腾讯Android自动化测试实战3.3.2 ListView列表遍历
  8. 高效的Java集合框架GNU Trove的使用
  9. 【跃迁之路】【593天】程序员高效学习方法论探索系列(实验阶段350-2018.09.21)...
  10. 新旧 iPhone 比速度,iOS 12 公开测试版发布!
  11. java 分隔函数split(,-1)的用途
  12. 几何分布的期望和方差公式推导_数学期望、方差、协方差
  13. iPhone唯一标识符
  14. JetBrains注册码计算(IntelliJ IDEA 15.0注册码激活)
  15. 在开源中国众包那里放了一个东西
  16. 计算机制造商logo,如何更改系统oem制造商logo等信息
  17. 把期货当现货做,专业投机大局观
  18. swoole安装教程人人商城互动直播通信服务启用教程
  19. python中可迭代对象是什么意思_python中可迭代对象是什么
  20. CSS——浮动的清除

热门文章

  1. scipy.sparse求稀疏矩阵前k个特征值
  2. 【一览表】macOS代号\macOS版本\苹果电脑各型号对应的macOS版本列表
  3. 2022年最热门三款骨传导测评推荐:骨传导选购指南分享,骨传导耳机选哪款好?
  4. IMX6ULL 串口5修改
  5. 二值形态学之击中击不中变换
  6. python数据分析与可视化
  7. 拼多多——多多的数字组合
  8. angular-ng new
  9. 5个最好的在线文件共享网站
  10. Oracle语句(持续更新)