为游戏适配刘海屏
本文为作者原创,转载请注明出处:https://www.cnblogs.com/zhaoqingqing/p/10098958.html
刘海屏的纵横比#
手机 | 分辨率 | 屏幕纵横比 | 刘海高度 | 刘海宽度 | 圆角大小 |
---|---|---|---|---|---|
正常1080 | 1080*1920 | 1.7777 | |||
iphone x | 1125*2436 | 2.16533 | |||
iphone xs max | 1242*2688 | 2.16425 | |||
华为P20 pro | 1080*2240 | 2.074074 | 81 | ||
华为荣耀 10 | 1080*2280 | 2.11111 | 90 | ||
小米8 | 1080*2248 | 2.0814 | 89 | 560 | |
小米8 SE | 1080*2248 | 2.0814 | 85 | 540 | |
oppo | 1080*2200 | 2.037 | 80 | 324 | |
vivo | 1080*2280 | 2.11111 | 27 | 100 | 50 |
联想z5 | 2246*1080 | 2.079 | |||
通过表中的数据,可以得出结论:刘海屏的屏占高更高,如果我们的游戏是横屏,那么界面就会更长。
适配思路#
知道这个特性之后,就可以对我们的界面进行锚点,分为 左 ,中 ,右,背景 四部分。
当在刘海屏下,左右都往中间靠,具体为:左部分往右方向偏移 X1,右部分往左方向偏移X2,背景是全屏的,中间部分不动
适配示例#
比如我们的全屏界面,可以这样处理
而当非全屏界面时,可以对界面下所有第一层节点,进行整体往左偏移X1,达到适配
模拟刘海屏#
如果有Android P的机型做测试,那是最好的。但是目前安卓模拟器的系统普遍还没有更新到Android 9,而且想下载Google的模拟器也那么不容易,所以建议在Unity的编辑器下进行测试。
在Unity中模拟刘海屏的分辨率,观察效果
各厂商的刘海屏适配方案#
华为刘海屏:https://developer.huawei.com/consumer/cn/devservice/doc/50114?from=timeline
小米刘海屏:
https://blog.csdn.net/wypeng2010/article/details/81065049l
OPPO刘海屏适配官方文档
https://open.oppomobile.com/service/message/detail?id=61876
vivo刘海屏适配官方文档
https://dev.vivo.com.cn/documentCenter/doc/103
google官方
https://developer.android.com/preview/features
google的刘海屏只有一个摄像头大小。
部分安卓可以在设置中关闭刘海,屏幕两边留出黑边,相当于屏幕变小了,比如华为手机:显示-显示区域控制
本文版权归作者和博客园共有,欢迎转载,转载之后请务必在文章明显位置标出原文链接和作者,谢谢。
如果本文对您有帮助,请点击【推荐】您的赞赏将鼓励我继续创作!想跟我一起进步么?那就【关注】我吧。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 2 本地部署DeepSeek模型构建本地知识库+联网搜索详细步骤