Flutter Web 应用程序中的空格键不适用于 iPhone(Safari 和 Chrome)中的 TextField

Pul*_*yal 5 safari ios flutter flutter-web

我在 Firebase 上部署了一个 Flutter Web 应用程序。

\n

在 Android 手机/笔记本电脑/Macbook 上,无论是在 Safari 还是 Chrome 上,一切都工作正常。

\n

但在 iOS 上,在 TextField 中输入文本时,空格按钮不会执行任何操作。

\n

该问题与Flutter #79082非常相似,但这次仅在 iPhone(iOS) 上!

\n
Doctor summary (to see all details, run flutter doctor -v):\n[\xe2\x88\x9a] Flutter (Channel master, 2.3.0-13.0.pre.73, on Microsoft Windows [Version 10.0.19042.985], locale en-US)\n[\xe2\x88\x9a] Android toolchain - develop for Android devices (Android SDK version 30.0.3)\n[\xe2\x88\x9a] Chrome - develop for the web\n[\xe2\x88\x9a] Android Studio (version 4.2.0)\n[\xe2\x88\x9a] VS Code (version 1.56.2)\n[\xe2\x88\x9a] Connected device (2 available)\n\n\xe2\x80\xa2 No issues found!\n
Run Code Online (Sandbox Code Playgroud)\n

Pul*_*yal 10

手动设置空格键的键盘快捷键对我有用!

在 main.dart 中,将以下代码行粘贴到 MaterialApp 中

shortcuts: {
    LogicalKeySet(LogicalKeyboardKey.space): ActivateIntent(),
 },
Run Code Online (Sandbox Code Playgroud)

你的 main.dart 应该是这样的:

Widget build(BuildContext context) {
 return MaterialApp(
   shortcuts: {
     LogicalKeySet(LogicalKeyboardKey.space): ActivateIntent(),
   },
   title: 'title of your app',
   //....
 );
}
Run Code Online (Sandbox Code Playgroud)