現象
WindowsアプリのTextFieldで、長い文字列を入力した場合に上下が見切れる問題が起きました。
(添付画像の左側のTextFieldは正常に表示されていますが、右側のTextFieldで問題が起きています。)
デバッグ
不具合の起きるコードは、以下のシンプルな実装です。
SizedBox(
height: 22,
child: TextField(
),
),
Flutter Dev ToolでWidgetのサイズを確認すると、上下に padding のようなものがあることがわかります。
修正方法
padding と isDense を設定することで問題が解決しました。
SizedBox(
height: 22,
child: TextField(
decoration: const InputDecoration(
contentPadding: EdgeInsets.symmetric(vertical: 5, horizontal: 2),
isDense: true,
),
),
),