颤振:隐藏 TextField 的键盘

时间:2021-02-02 22:36:21

标签: flutter

我有一个搜索文本字段,当我进入该字段时,我看到了键盘。当用户单击/选择字段而不是显示键盘时,我想转到另一个屏幕。

如何在用户单击字段时隐藏键盘并转到另一个屏幕。

基本上,我想创建当您点击搜索按钮时 Gmail 正在执行的操作。

这是文本字段的片段..

Container(
  color: Palette.WHITE,
  child: Row(
    mainAxisAlignment: MainAxisAlignment.spaceBetween,
    children: <Widget>[
       TextField(
          controller: _textSearchController,
          onSubmitted: (val) {}
           decoration: InputDecoration(...)
        )
       ],
  )
)

感谢您的帮助

3 个答案:

答案 0 :(得分:1)

您是否尝试过像下面这样在 onSubmit 方法中隐藏键盘?

onSubmitted: (val) {
     FocusScope.of(context).requestFocus(FocusNode());
  }

让我知道它是否有效。

答案 1 :(得分:0)

onTap 小部件上有一个 TextField 属性,您可以使用它导航到不同的路线。如果您想禁用输入,您可以将 readOnly 属性设置为 true。

如果你想在 Gmail 上重新创建搜索按钮,可以看看 Flutter 提供的 Search Delegate showMenu 方法

答案 2 :(得分:0)

如果您想不打开键盘并将您的 TextField 用作按钮以转到另一个屏幕

getListItems(callback){
    ListItemsModel.find({}, function (err, items) {
        if(err){ callback(err,null)}
        else{
           callback(null,items);
        }
    });
}