HarmonyOS 鸿蒙Next如何创建桌面快捷方式? 另外监听键盘显示时,怎么没有返回键盘的高度?

发布于 1周前 作者 caililin 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next如何创建桌面快捷方式? 另外监听键盘显示时,怎么没有返回键盘的高度?

问题1:我想咨询下创建桌面快捷方式,搜索api没有找到。 问题2: 使用如下代码监听键盘显示时,没有返回键盘的高度。 如何监听键盘弹出并且可以获取此时键盘的高度呢?

inputMethodEngine.getInputMethodEngine().on(‘keyboardShow’, () => {
console.log(‘inputMethodEngine keyboardShow.’);
});  


更多关于HarmonyOS 鸿蒙Next如何创建桌面快捷方式? 另外监听键盘显示时,怎么没有返回键盘的高度?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

1、鸿蒙不考虑开放桌面快捷打开方式能力,建议使用服务卡片定制对应场景 2、可以使用窗口相关接口获取:

aboutToAppear() {

  window.getLastWindow(getContext(this)).then(currentWindow => {

    //获取windowClass对象

    let property = currentWindow.getWindowProperties();

    //方式1:获取规避区域

    let avoidArea = currentWindow.getWindowAvoidArea(window.AvoidAreaType.TYPE_KEYBOARD);

    // 初始化显示区域高度

    this.screenHeight = px2vp(property.windowRect.height - avoidArea.bottomRect.height);

    // 监视软键盘的弹出和收起

    currentWindow.on(‘avoidAreaChange’, async data => {

      if (data.type !== window.AvoidAreaType.TYPE_KEYBOARD) {

        return;

      }

      this.screenHeight = px2vp(data.area.bottomRect.height);

      console.log(this.screenHeight + ‘’ + “foo xxx”) //控制台输出可以看到键盘的高度

    })

    //方式2:直接获取软键盘高度

    currentWindow.on(‘keyboardHeightChange’, data => {

      console.log("foo data " + px2vp(data)) //控制台输出可以看到键盘的高度

    })

  })

}

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

监听窗口的‘keyboardHeightChange’事件,或者监听系统键盘的显示/隐藏事件’imeShow’和’imeHide’,可以计算键盘高度

更多关于HarmonyOS 鸿蒙Next如何创建桌面快捷方式? 另外监听键盘显示时,怎么没有返回键盘的高度?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next如何创建桌面快捷方式?

在HarmonyOS中,创建桌面快捷方式可以通过调用系统的快捷方式管理接口实现。开发者需使用特定的API来创建并注册快捷方式,这通常涉及到一个Intent及其相关元数据。具体操作步骤包括定义快捷方式的属性(如名称、图标等),然后通过系统的快捷方式服务接口进行注册。快捷方式的创建与注册代码应集成在应用的主要业务逻辑中,确保在应用安装或更新时能够正确执行。

监听键盘显示时,怎么没有返回键盘的高度?

在HarmonyOS中,监听键盘显示并获取其高度可能需要使用系统提供的输入窗口变化监听接口。然而,并非所有系统都会直接提供键盘高度的信息。若标准API未直接返回键盘高度,开发者可考虑通过监听输入窗口尺寸变化来间接推算键盘高度。这通常涉及到监听布局变化事件,然后比较变化前后的窗口尺寸,从而估算出键盘占据的空间。请注意,此方法依赖于系统对窗口变化事件的处理机制,可能在不同设备或系统版本上表现不一。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部