flutter

flutterでキーボードを閉じる

Introduce

今回はflutterアプリでキーボードを閉じるための処理をします.

Environment

Usage

ソースコードはこちら.

monkeydaichan/flutter_samples
sample of flutter. Contribute to monkeydaichan/flutter_samples development by creating an account on GitHub.

main.dart

まずはmain.dartを編集して,screen.dartファイルのWidgetを表示させるようにします.
ThemeDataを使用しているのは何度も同じ内容書きたくないからです.

screen.dart

MainPageWidgetsでTextFieldを表示させます.
ScaffoldWidgetをGestureDetectorで囲みます.これでタップをしたときにキーボードのフォーカスのオン・オフを切り替えます.

Reference

Flutterのキーボードを閉じるには · Androg
はじめに FlutterでLINEのようなチャットアプリを作っていて、TextFormでキーボードが表示されたら、Androidはバックキーでキーボードを閉じれるけど、iOSはバックキーないので閉じることができなかったので、キーボードを閉じる方法をメモ。
キーボードを閉じるには GestureDetector( onTap: () => FocusScope.of(context).requestFocus(FocusNode()), child: listView, ) このようにタップイベントでキーボードのフォーカスを外すことで、キーボードを閉じるようです。 listViewだけにGestureを設定しているのは、TextFormFieldを含むWidgetに対してGestureを設定すると、キーボードが上がってる状態でTextFormFiledをタップすると、一旦閉じてまたキーボードが立ち上がってしまうため、listViewのみに設定しています。
参考 https://github.com/flutter/flutter/issues/7247#issuecomment-406178161 https://stackoverflow.com/questions/44991968/how-can-i-dismiss-the-on-screen-keyboard#44991969
How can I dismiss the on screen keyboard?
I am collecting user input with a TextFormField and when the user presses a FloatingActionButton indicating they are done, I want to dismiss the on screen keyboard.

How do I make the keyboard go a...

-flutter
-

Translate »