ReactNative全面屏(Android)適配問題

如今是全面屏的時代,Android手機如今也是各類全面屏,「劉海屏」,「彈出攝像頭」,"水滴屏",「挖孔屏」,伴隨着科技的飛速發展,各類提升屏佔比的方案也是層出不窮,有點「百花齊放百家爭鳴」的感受,哈哈。可是對於開發者來講,Android的屏幕適配就是一個富有挑戰性的工做了。
爲了呈現更好的視覺效果,許多安卓OEM廠商都開始採用超大屏幕。三星剛剛發佈了本身的新旗艦Samsung Galaxy S8,長寬比達到18.5:9。今年早些時候的全球移動大會上LG也亮相了 LG G6,屏幕長寬比達到了18:9。
在這裏插入圖片描述android

(左圖)18.5:9 設備上最大縱橫比設置爲 16:9 的應用(上下有黑邊)
(右圖)18.5:9 設備上最大縱橫比設置爲 18.5:9 的應用git

  • 若是您的應用定位到 Android 8.0(API 級別 26)或更高版本,它會根據其佈局填充整個屏幕。
  • 若是您的應用定位到Android 7.1(API 級別 25)或更低版本,則系統會將應用界面的大小限制爲長寬比爲 16:9(約爲 1.86)的窗口。
    若是應用在具備較大屏幕長寬比的設備上運行,則該應用會在帶黑邊的 16:9 窗口中顯示,從而使部分屏幕處於未佔用狀態。

爲了支持儘量多的設備,應用應動態調整其佈局,以確保其內容和控件可見且結構清晰。
針對此問題,Android官方提供了適配方案,能夠提升App支持的最大屏幕長寬比,在 AndroidManifest.xml 中作以下配置便可:github

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

可參考Android官方的支持文檔:聲明受限屏幕支持
支持劉海屏
開發之路漫漫其修遠兮,吾將上下而求索!ide

我的網站:https://wayne214.github.io
個人公衆號:君偉說。歡迎關注哦佈局

相關文章
相關標籤/搜索