使用原生占位(僅App端支持)
mainfest.json 文件 app-plus 節點下配置 safearea
"safearea": { "background": "#CCCCCC", "bottom": { "offset": "auto" } }
不使用原生占位(非App端可以不配置mainfest)
mainfest.json 文件 app-plus 節點下配置 safearea
"safearea": { "bottom": { "offset": "none" } }
然后在需要適配的頁面內使用 css 常量 constant(safe-area-inset-bottom)、env(safe-area-inset-bottom) 來適配,參考:為iPhoneX設計網站。微信小程序模擬器不支持,以真機為准。
比如為列表底部添加內邊距避開安全區,在 iPhoneX 上列表底部會有內邊距,在其他設備上沒有內邊距:
<style> .list { padding-bottom: 0; padding-bottom: constant(safe-area-inset-bottom); padding-bottom: env(safe-area-inset-bottom); } </style>
安卓全面屏底部安全區背景色修改方式
使用Native.js修改:
var Color = plus.android.importClass("android.graphics.Color"); plus.android.importClass("android.view.Window"); var mainActivity = plus.android.runtimeMainActivity(); var window_android = mainActivity.getWindow(); window_android.setNavigationBarColor(Color.GREEN);