Flutter支持外部键盘

4

如何在没有文本字段的情况下从外部键盘收集字符并将其附加到变量中? 我正在尝试设置蓝牙/USB条形码扫描仪,以便在扫描时自动执行某些操作,但不需要点击字段(或查看字段) 并且让信用卡读取器在后台自动完成所有操作。


你好,你能连接上USB条形码扫描器吗?我刚开始尝试使用一个,所以正在收集信息,但迄今为止我找到的只有这篇文章。谢谢。 - Vincenzo
2个回答

9
< p > RawKeyboardListener 是一种能够实现这个功能的方法。详情请参见https://docs.flutter.io/flutter/widgets/RawKeyboardListener-class.html

  var _focusNode = FocusNode();

  @override
  Widget build(BuildContext context) {

    return RawKeyboardListener(
        child: Text('raw keyboard input'),
        focusNode: _focusNode,
        onKey: _onRawKeyEvent,
      );
  }

  void _onRawKeyEvent(RawKeyEvent event) {
    ..
  }

0

我和你处于同样的位置,在做了一些研究后,我认为RawKeyboardListener实际上不是最好的选择。相反,有一个名为FocusScopeWidget似乎非常适合这个目的。这个Widget最好的地方在于它的onKey事件不会被任何文本字段触发,也不会被软键盘触发。


嘿,我知道这有点老了,但是你能提供一个实现的示例吗?我从文档中无法理解。此外,这个小部件是否会阻止下一个路由的另一个小部件获得焦点? - malik_cesur

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接