flutter开发实战-RawKeyboardListener监听键盘事件及keycode。
最近开发过程中遇到外设备的按钮点击触发相应的操作,需要监听对应的keycode来开启游戏或者相关操作。
这里用到了RawKeyboardListener
一、RawKeyboardListener是什么?
RawKeyboardListener是一个Widget,可以用来监听键盘的原始输入事件。
RawKeyboardListener属性
focusNode:FocusNode(),
autofocus:是否自动焦点,
onKey:监听回调方法,可以监听按下RawKeyDownEvent,松开RawKeyUpEvent,按下时候触发
child:子Widget
onKey: 可以监听按下RawKeyDownEvent,松开RawKeyUpEvent,按下时候触发
二、实现监听的keycode
实现监听键盘keycode,这里监听的是回车键enter。
return RawKeyboardListener(focusNode: FocusNode(),autofocus: true, // 要开启自动焦点onKey: (RawKeyEvent event) {if (event is RawKeyDownEvent) {// 监听按下RawKeyDownEvent,松开RawKeyUpEvent,按下时候触发if (Platform.isAndroid) {RawKeyEventDataAndroid rawKeyEventDataAndroid =event.data as RawKeyEventDataAndroid;if (rawKeyEventDataAndroid.keyCode == 66) {// 点击ENTER_CODE// 开启游戏}} else if (Platform.isIOS) {RawKeyEventDataIos rawKeyEventDataIos =event.data as RawKeyEventDataIos;if (rawKeyEventDataIos.keyCode == 66) {// 点击ENTER_CODE// 开启游戏}}}},child: Container());
当需要判断下环境Platform.isAndroid或者Platform.isIOS
需要注意的是:要开启自动焦点 autofocus为true。
三、小结
flutter开发实战-RawKeyboardListener监听键盘事件及keycode,可以监听按下,松开,keycode等相关功能。
学习记录,每天不停进步。