使用背景

为了在UI中使用特效层,项目Canvas采用了Screen Space-Camera类型

UI的Scale Mode 选择的是Scale With Screen Size 的Expand,画布大小填的是1334, 750

在该选择下,会自动根据分辨率适配宽度/高度。

自动适配的规则是:

屏幕实际宽高比值的

屏幕实际宽高比值的  > 画布大小的宽高比值  采用以高度缩放

screen.width/screen.height < 1334/750

实际问题

1.血条或者头顶的ui,跳字的位置会有偏差,根据3D坐标转2D坐标的接口得到的坐标(Camera.main.WorldToScreenPoint)已经不适用了,需要做缩放。

缩放的解决方式:

以宽缩放,需要以宽的缩放比例去缩放高

ratio = 1334/screen.width

x = screen2d.x * ratio - screen.width/2 // 以宽度的比例求出x值(减去屏幕大小的一半是因为锚点在中心)

y = (screen2d.y - screen.height/2) * ratio // 直接以宽的比例求出y值

以高缩放,需要以高的缩放比例去缩放高

ratio = 750/screen.height

x = (screen2d.x - screen.width/2) * ratio // 直接以高的比例求出x值

y = screen2d.y * ratio - screen.height/2 // 以高度的比例求出y值(减去屏幕大小的一半是因为锚点在中心)

ui使用该坐标即可完美的适配

2.当遇到ipad这种宽高度比低的会以宽度适配,导致上下留白。

解决方式让ui做高些,现在还没做一些其他尝试。先临时处理

3.刘海屏

项目解决思路

打表的形式,ios有自己的接口screen.safearea,Android9之后有api接口,其他安卓厂商有自己的设定,只要把市面的机型刘海高度记录下来,适配的时候直接使用即可。

ios安全范围参考:

unity android适配,unity实战 手机屏幕适配相关推荐

  1. unity实战 手机屏幕适配

    使用背景 为了在UI中使用特效层,项目Canvas采用了Screen Space-Camera类型 UI的Scale Mode 选择的是Scale With Screen Size 的Expand,画 ...

  2. unity 实时画面投屏到手机_unity实战 手机屏幕适配

    使用背景 为了在UI中使用特效层,项目Canvas采用了Screen Space-Camera类型 UI的Scale Mode 选择的是Scale With Screen Size 的Expand,画 ...

  3. Android开发——Android手机屏幕适配方案总结

    0. 前言 Android的屏幕适配,即使得某一元素在Android不同尺寸.不同分辨率的手机上具备相同的显示效果,这个问题一直以来都是我们Android开发者不得不面对的问题.本文参考了很多前人的博 ...

  4. Android 万能适配方案和UI屏幕适配 不同分辨率 最全面 最易懂的

    文章目录 1.屏幕尺寸 2.屏幕分辨率 3.屏幕像素密度 4.图片的适配方案 1.屏幕尺寸 屏幕尺寸指屏幕的对角线的长度,单位是英寸,1英寸=2.54厘米(下面有图文介绍) 比如常见的屏幕尺寸有2.4 ...

  5. Unity Android 之 应用打开手机的指定网页浏览器(external browser)的两种方法(封装aar和不用封装aar方法)

    Unity Android 之 应用打开手机的指定网页浏览器(external browser)的两种方法(封装aar和不用封装aar方法) 目录 Unity Android 之 应用打开手机的指定网 ...

  6. Android程序对不同手机屏幕分辨率自适应的总结

    各种Android操作系统的手机简直就是琳琅满目,屏幕分辨率的差异可想而知.目前比较主流的有WVGA=800x480,HVGA=480x320,另外的还有QVGA=320x240.当然还有魅族M9的D ...

  7. Unity Android 之 Unity Android 交互(aar形式)动态申请权限功能实现(权限可人为怎加删减,并含代码工程)

    Unity Android 之 Unity Android 交互(aar形式)动态申请权限功能实现(权限可人为怎加删减,并含代码工程) 目录

  8. Android手机屏幕适配

    Android机型尺寸各种各样,于是屏幕适配就成了Android开发中很重要的一环.Android屏幕适配可能一些开发者都会遇到这样的问题,今天就来分享下屏幕适配,其实Android屏幕适配也可以很简 ...

  9. android手机屏幕适配理论知识

    对于具有相同像素密度的设备来说,像素越高,尺寸就越大,所以可以换个思路,讲问题从单纯的尺寸大小转换到像素大小和像素密度的角度来 占比最高的是480*800,320*480的设备竟然也占据了很大比例,但 ...

最新文章

  1. 面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)...
  2. Bresenham 生成直线
  3. android edittext email,Android上EditText上的电子邮件地址验证
  4. 图集cancelButtonIndex,发送通知简洁写法
  5. C++_异常6-其他异常特性
  6. LeetCode 537. 复数乘法
  7. c语言vbs,我的vbs整人程序
  8. 扫帚:我天天都能立起来,看把你们闲的
  9. 漫步最优化八——梯度信息
  10. 讲故事形式解释什么是股票_讲故事的人可以教公开领导者什么
  11. RocketMQ(四)—— 单机与集群安装
  12. 意想不到的惊喜又来了 荣耀50系列或最高支持100W快充
  13. Codeforces Gym 100203G G - Good elements 暴力
  14. WebSocket协议:5分钟从入门到精通
  15. 树与二叉树 | 平衡二叉树
  16. win10开启wifi
  17. P4839 P哥的桶 题解
  18. 什么东西可以改善睡眠,这些东西应该能帮到你
  19. P7721 [Ynoi2007] rcn
  20. CSS学习笔记(十)对表单和数据表格使用样式

热门文章

  1. 【kafka】kafka Replica无法从leader同步消息
  2. 【kafka】JMX 监控kafka FINER RMI TCP getConnectionId IOException
  3. 【Kafka】Mac 环境 Kafka诡异问题之kafka eagle 界面无法访问
  4. drools 7.x-复杂事件处理入门
  5. 《spring-boot学习》-09-spring boot+mybatis多数据源
  6. ucenter php7.0版,UCenter1.5.0/UCenter Home1.5/Discuz! 7.0
  7. python列表数据类型一致_python笔记--数据类型--列表
  8. Scala之集合Collection
  9. OUTLOOK2019 解决 无法验证您连接到的服务器使用的安全证书
  10. 【钉钉PC】PC端钉钉清除缓存