【关键字】
底部安全距离 / 页面布局 / @ohos.window (窗口) / 底部页签场景
【问题描述】
升级最新next版本后获取底部安全距离为0,但底部会出现一条横杠,遮挡底部内容,不同版本是否支持获取到安全距离。
【解决方案】
获取底部安全距离有两种方案。
方案一:
获取布局避让遮挡的区域。
let type = window.AvoidAreaType.TYPE_NAVIGATION_INDICATOR; // 以导航条避让为例
let avoidArea = windowClass.getWindowAvoidArea(type);
// 此处获取的单位为px,需转为vp
let bottomRectHeight = px2vp(avoidArea.bottomRect.height); // 获取到导航条区域的高度console.log("bottomRectHeight is " + bottomRectHeight);
参考文档:
方案二:
组件安全区方案。
不设置窗口全屏,这种场景下,针对底部的页签部分,Navigation组件和Tabs组件默认实现了页签的延伸处理,开发者只需要保证Navigation和Tabs组件的底部边界和底部导航条重合即可。
参考: