RN Android全面屏適配


像現在市面上新出的手機,例如華為P30 pro,小米9,iPhone XS MAX,屏占比都驚人的達到90%以上,這些手機具備了以下幾個特點

  • 大,屏占比高,長寬比都不再是16:9,都達到了19.5:9甚至是更高
  • 短邊的像素、density的取值都是一樣的,所以需要適配的是長邊

他們具備以上特點的同時帶了以下問題

  • 傳統布局的高度不足,導致上下留黑邊
  • 基於屏幕頂部或底部的布局,如彈框,在全面屏手機上會發生位移
  • 安全區域問題

解決方案

應用通過如下兩周方法修改AndroidManifest.xml均可以默認全屏顯示:

  • 1.針對Activity添加android:resizeableActivity = "true",此設置只針對Activity生效,且增加了此屬性該activity也會支持分屏顯示
  • 2.設置targetSdkVersion>=26,也就是O版本

應用通過如下兩種方式局可以設置應用支持的最大顯示比例,如果應用設置的支持的最大比例是2,而設備實際比例是2.5,則還是無法全屏顯示,會出現黑邊:

  • 1.添加android:MaxAspectRatio,此設置項均可以針對Application和Activity生效,對應的是應用支持的最大比例,此屬性需要基於O版本開發環境才可以編譯通過
  • 2.添加android.max_aspect
<!--適配全面屏-->
<meta-data
    android:name="android.max_aspect"
    android:value="2.1"
/>

對於Android的全面屏適配以上都是在Native部分需要做的處理,JS部分的要求主要是要注意在長邊更長的情況下圖標,圖片的適配


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM