如何在 Flutter 视图启动时禁用屏幕键盘?

How to disable onscreen keyboard on startup of view in Flutter?

我开始编写一个 Flutter 应用程序来远程控制一些无线电流。我 运行 在添加 TextFormField 以显示流的当前音量设置时遇到问题。 (我选择 TextFormField 而不是简单地 Text 的原因是我想使用该字段来显示当前设置并让用户在一个地方更改当前值。)

问题如下:当我添加 TextFormField(位于下面屏幕截图中的绿色条内,文本 Vol: 之后)时,我意识到每当我开始这个 view/page, 进入页面时默认总是显示板载键盘.

相反,我希望键盘仅在用户在 TextFormField 内单击时显示。

TextFormField 的代码如下所示:

TextFormField(
  onFieldSubmitted: (value){
    print("The value entered is : $value");
  },
  // Define keyboard type
  keyboardType: TextInputType.number,
  // Make sure user doesn't enter letters or punctuation
  inputFormatters: <TextInputFormatter>[WhitelistingTextInputFormatter.digitsOnly],
  validator: (val){
    return null; 
  },
  autofocus: true,
  controller: volTextEditingController,
  style: TextStyle(
    color: Colors.white,
    fontSize: 16,
  ),
  decoration: InputDecoration(
    border: InputBorder.none,
  ),
  maxLines: 1,
)

所以,我想知道是否有人知道如何防止键盘在显示的启动时出现 view/page。提前致谢!如果需要,完整代码可在 GitGub.

上找到

我刚刚发现这个问题是由设置autofocus: true引起的。因此,删除它可以解决问题。