FlutterのTextFieldで1行入力時にテキスト入力後Submitしてもキーボードを閉じないようにする

1 min read読了の目安(約500字

小ネタです。表題の通り、FlutterのTextFieldで1行入力時にテキスト入力後Submitしてもキーボードを閉じないようにする方法になります。言葉で説明しても想像しづらいですが、

デフォルトだとテキストを入力してsubmitボタンを押すとこんな感じでキーボードが閉じますが、

これをこうしたい。

力技っぽいけど、キーボードを複数行のタイプにして最大入力行を1にするとうまくいきます。

TextField(
  keyboardType: TextInputType.multiline,
  maxLines: 1,
  minLines: 1,
)

TextFieldの1行でのheightは維持したままでsubmitをしてもフォーカスを維持しておきたい、みたいな時にこれを使うと回避できます。

もっといいやり方がありそうだけど、一応はこれでやりたいことは出来ました。

めでたしめでたし。