[Flutter]TextFormFieldのテキストをクリアするには?

Flutter

どうも、ちょげ(@chogetarou)です。

TextFormFieldのテキストを全て削除する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

TextFormFieldのテキストをクリアするには、TextEditingControllerを使います。

まず、TextEditingControllerの変数を用意し、TextFormFieldの引数「controller」に指定します。

final _editController = TextEditingController();

〜〜〜〜〜〜〜

TextFormField(
  controller: _editController,
),

そして、ボタンなどの処理で、用意した変数のclearメソッドを呼び出します。

ElevatedButton(
  onPressed: () {
    _editController.clear();
  },
  child: Text('Clear'),
),

clearメソッドが呼び出されることで、TExtFormFieldのテキストがクリアされます。

使用例

以下は、使用例です。

  final _editController = TextEditingController();

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Column(
          mainAxisSize: MainAxisSize.min,
          children: [
            TextFormField(
              controller: _editController,
            ),
            SizedBox(
              height: 30,
            ),
            ElevatedButton(
              onPressed: () {
                _editController.clear();
              },
              child: Text('Clear'),
            ),
          ],
        ),
      ),
    );
  }

コメント

タイトルとURLをコピーしました