代码之家  ›  专栏  ›  技术社区  ›  Justin808

如何使文本域以外的任何地方的轻敲使其失去焦点?

  •  1
  • Justin808  · 技术社区  · 7 年前

    当我点击 TextField 它获得了关注。键盘打开,打字开始工作。现在我打字完了,除了 文本字段 ,我希望焦点会改变,键盘会消失,但事实并非如此。

    如何在 文本字段 让它失去焦点?

    2 回复  |  直到 7 年前
        1
  •  0
  •   Hussam    7 年前

    你可以把整个屏幕都包起来 GestureDetector 所以当你触摸任何地方 手势识别 , onTap 方法将隐藏软键盘。

    new Scaffold(
      body: new GestureDetector(
        onTap: () {
          /*This method here will hide the soft keyboard.*/
          FocusScope.of(context).requestFocus(new FocusNode());
        },
        child: new Container(
           //More work here
        )
     )
    
        2
  •  0
  •   Chetan Joshi weird    7 年前

    您可以使用以下代码尝试取消焦点文本字段:

    onFieldSubmitted: (term){
      currentNode.unfocus();
    }