HarmonyOS 鸿蒙Next 状态栏和底部触控栏的高度获取
HarmonyOS 鸿蒙Next 状态栏和底部触控栏的高度获取
该问题可以参考开发指南(代码)实现。
开发指南链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-window#getwindowavoidarea9
参考代码:目前通过getWindowAvoidArea无法拿到bottom的高度;
底部菜单栏高度
onPageShow() {
AppStorage.setOrCreate("nav", this.pathInfos);
let windowStage = AppStorage.get("windowStage") as window.WindowStage;
console.info("zzzzz "+JSON.stringify(windowStage.getMainWindowSync().getWindowAvoidArea(window.AvoidAreaType.TYPE_NAVIGATION_INDICATOR)));
}
更多关于HarmonyOS 鸿蒙Next 状态栏和底部触控栏的高度获取的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙系统中,获取状态栏和底部触控栏的高度可以通过系统提供的API来实现。以下是直接获取这两个高度的方法:
-
获取状态栏高度: 使用
SystemUiController
类中的相关方法,可以通过调用getWindow().getDecorView().getWindowInsets().getDisplayCutout().getSafeInsetTop()
来获取状态栏的高度(注意,这返回的是顶部安全区域的高度,通常等同于状态栏高度)。int statusBarHeight = getWindow().getDecorView().getWindowInsets().getDisplayCutout().getSafeInsetTop();
注意:由于鸿蒙API与Android有所差异,上述代码需根据鸿蒙实际API调整。鸿蒙系统中可能需要使用
WindowInsets
或类似类的其他方法。 -
获取底部触控栏高度: 底部触控栏(如虚拟导航栏)的高度同样可以通过
WindowInsets
获取。在鸿蒙系统中,可能使用的方法类似于Android中的getWindowInsets().getVisibleInsets().bottom
,但具体实现需参考鸿蒙API文档。int navigationBarHeight = getWindow().getDecorView().getWindowInsets().getVisibleInsets().bottom;
注意:鸿蒙系统中获取底部触控栏高度的具体方法可能不同,需查阅鸿蒙开发文档。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html