Android全面屏適配

什麼是全面屏

概念

不少人可能把全面屏跟曲面屏混淆,其實這是兩個不一樣的概念。html

通常手機的屏幕縱橫比爲16:9,如1080x1920、1440x2560等,其比值爲1.777777……,全面屏手機出現以前,Android中默認的最大屏幕縱橫比(maximum aspect ratio)爲1.86,即可以兼容16:9的屏幕。android

一些手機廠商爲了追求更大的屏幕空間以及更極致的用戶體驗,因而提升了屏幕縱橫比,17:九、19:十、18:九、18.5:9的手機開始進入市場,這些手機被稱爲全面屏手機。app

目前市面上的全面屏機型

機型 屏幕縱橫比 上市時間
小米MIX 17:9 2016年10月
LG G6 18:9 2017年2月
Samsung Galaxy S8 18.5:9 2017年5月
Essential Phone 19:10 2017年8月

另有確切消息華爲下半年將會發布全面屏的手機,傳說中的iPhone8也將採用全面屏的設計。google

如何適配

爲何要適配全面屏

雖然目前市面上全面屏手機還很少,但隨着小米、華爲、三星、蘋果的加入,勢必引發全面屏手機的爆發,所以適配全面屏手機成爲必要。spa

因爲全面屏手機的縱橫比比以前大,若是不適配的話,Android默認爲1.86,小於全面屏手機的縱橫比,在全面屏手機上打開App時,上下就會留有空間,顯示爲黑條。雖不影響功能,但極其影響視覺體驗,另外全面屏提供的額外空間也沒有得以利用。設計

適配先後的示例圖(來自Android官方博客):code

這裏寫圖片描述

官方適配方案

在Galaxy S8發佈以後,Android官方提供了適配方案,即提升App所支持的最大屏幕縱橫比,實現很簡單,在AndroidManifest.xml中可作以下配置:xml

<meta-data android:name="android.max_aspect" android:value="ratio_float"/>

其中ratio_float爲浮點數,官方建議爲2.1或更大,由於18.5:9=2.055555555……,若是往後出現縱橫比更大的手機,此值將會更大。htm

另外若是沒有上述設置,android:resizeableActivity 也爲false的話,則應用所支持的最大縱橫比爲默認值1.86,即默認沒法支持全面屏。blog

官方指導文檔爲 Update your app to take advantage of the larger aspect ratio on new Android flagship devices

小米適配建議

小米做爲國內最先發布全面屏手機的廠商,也爲開發者提出了一些適配建議。除了按上述方法適配屏幕以外,還建議對虛擬導航欄進行適配,主要是爲了界面色調的一致性體驗。更多信息可參考 全面屏及虛擬鍵適配說明

相關文章
相關標籤/搜索