HarmonyOS window底部非安全区域无法正常获取,可正常获取到顶部非安全区域

window底部非安全区域无法正常获取,可正常获取到顶部非安全区域。

const mainWindow = windowStage.getMainWindowSync()   
const rect = mainWindow.getWindowAvoidArea(window.AvoidAreaType.TYPE_SYSTEM).bottomRect  

得到的rect为{0,0,0,0}。

const topRect = mainWindow.getWindowAvoidArea(window.AvoidAreaType.TYPE_SYSTEM).topRect

而topRect的值是正常的。使用.expandSafeArea([SafeAreaType.SYSTEM],[SafeAreaEdge.BOTTOM])也无法生效,是否可以帮忙解释一下这个方法是如何工作的?


HarmonyOS
2024-10-16 10:04:31
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

获取布局避让遮挡的区域:

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);

参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-window-V5#avoidareatype7

分享
微博
QQ
微信
回复
2024-10-16 15:57:21
相关问题
关于屏幕安全区域的问题咨询
245浏览 • 1回复 待解决
HarmonyOS 底部安全距离是怎么获取
501浏览 • 1回复 待解决
HarmonyOS 底部安全距离获取为0
410浏览 • 1回复 待解决
如何获取手势区域高度
253浏览 • 1回复 待解决