為遊戲適配劉海屏
阿新 • • 發佈:2018-12-10
劉海屏的縱橫比
手機 | 解析度 | 螢幕縱橫比 | 劉海高度 | 劉海寬度 | 圓角大小 |
---|---|---|---|---|---|
正常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,達到適配
在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的劉海屏只有一個攝像頭大小。
部分安卓可以在設定中關閉劉海,螢幕兩邊留出黑邊,相當於螢幕變小了,比如華為手機:顯示-顯示區域控制