【问题标题】:flutter :Hide keyboard for a TextField颤动:隐藏文本字段的键盘
【发布时间】:2021-05-07 03:47:43
【问题描述】:

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

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

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

这是文本域的 sn-p..

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

感谢您的帮助

【问题讨论】:

  • 也许让它成为一个 看起来 像文本字段但实际上只是打开带有实际文本字段的框的按钮?

标签: flutter


【解决方案1】:

您是否尝试过像下面的 onSubmit 方法隐藏键盘?

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

让我知道它是否有效。

【讨论】:

    【解决方案2】:

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

    TextField(
      readOnly: true,
      onTap: () => Navigator.push(context, MaterialPageRoute(builder: (context) => SomeOtherScreen())),
    ),
    

    【讨论】:

      【解决方案3】:

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

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

      【讨论】:

        猜你喜欢
        • 2020-09-17
        • 1970-01-01
        • 2019-06-09
        • 2021-04-03
        • 1970-01-01
        • 1970-01-01
        • 2014-03-18
        • 2011-01-19
        • 1970-01-01
        相关资源
        最近更新 更多