どうも、ちょげ(@chogetarou)です。
CupertinoTextFieldにボタンなどを使ってフォーカスを外す方法を紹介します。
方法

CupertinoTextFieldにボタンなどを使ってフォーカスを外すには、FocusNodeを使います。
まず、FocusNodeの変数を用意し、CupertinoTextFieldの引数「focusNode」に用意した変数を指定します。
final _focusNode = FocusNode();
~~~~~~
CupertinoTextField(
focusNode: _focusNode,
),
そして、ボタンなどの処理で、FocusNodeのunfocusメソッドを呼び出します。
ElevatedButton(
onPressed: () {
_focusNode.unfocus();
},
child: Text('Focus'),
)
FocusNodeのunfocusメソッドが呼び出されると、CupertinoTextFieldのフォーカスが外されます。
使用例
以下は、使用例です。
final _focusNode = FocusNode();
@override
Widget build(BuildContext context) {
return SafeArea(
child: Scaffold(
body: Padding(
padding: const EdgeInsets.all(8.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
CupertinoTextField(
focusNode: _focusNode,
),
ElevatedButton(
onPressed: () {
_focusNode.unfocus();
},
child: Text('Unfocus'),
)
],
),
),
),
);
}

[Flutter]Cupertino(iOS風)でAlertDialogを表示するには?
CupertinoでAlertDialogを表示する方法を紹介します。

[Flutter]CupertinoButtonの使い方
CupertinoButtonの使い方を解説します。

[Flutter]CupertinoSwitchの使い方
iOS風のトグルボタンを実装するCupertinoSwitchの使い方を解説します。

[Flutter]Cupertino( iOS風 )でBottomNavigationBarを表示するには?
CupertinoでBottomNavigationBarを表示する方法を紹介します。
コメント