React Native视图如何响应外部(硬件)键盘事件?

时间:2020-05-27 12:13:11

标签: react-native

我想通过允许React Native屏幕响应键盘快捷键(例如标准⌘[),然后导航回到上一页来支持iPad(并改善我的调试体验)。

导航非常容易,但是如何在组件中监听键盘快捷键?

Keyboard或“输入”的React Native文档完全没有提供任何建议。

1 个答案:

答案 0 :(得分:0)

您可以使用react-native-keyevent包并在组件上添加事件侦听器。

  componentDidMount() {
    // if you want to react to keyDown
    KeyEvent.onKeyDownListener((keyEvent) => {
      console.log(`onKeyDown keyCode: ${keyEvent.keyCode}`);
      console.log(`Action: ${keyEvent.action}`);
      console.log(`Key: ${keyEvent.pressedKey}`);
    });

    // if you want to react to keyUp
    KeyEvent.onKeyUpListener((keyEvent) => {
      console.log(`onKeyUp keyCode: ${keyEvent.keyCode}`);
      console.log(`Action: ${keyEvent.action}`);
      console.log(`Key: ${keyEvent.pressedKey}`);
    });

    // if you want to react to keyMultiple
    KeyEvent.onKeyMultipleListener((keyEvent) => {
      console.log(`onKeyMultiple keyCode: ${keyEvent.keyCode}`);
      console.log(`Action: ${keyEvent.action}`);
      console.log(`Characters: ${keyEvent.characters}`);
    });
  }