キーボード入力画面でフォームがスクロールしないを解決する
問題
スマホ画面を横にした時、モーダル内のフォームの入力キーボードが使いにくい
解決策
MediaQuery.of(context).viewInsets.bottomを使う
やり方
final keyboardSpace = MediaQuery.of(context).viewInsets.bottom;
変数に格納
Padding(
padding: EdgeInsets.fromLTRB(16, 48, 16, keyboardSpace + 16),
こうするとエラーが発生する 下にスクロールが出来なくなります。
これを解消するのに
SingleChildScrollView Widjet で囲む。
SingleChildScrollView(
child: Padding(
padding: EdgeInsets.fromLTRB(16, 48, 16, keyboardSpace + 16),
これでスクロール出来るようになります。
ここまで来ると今度はモーダルの高さが全体を占めなくなります。 このままでも良いのですが気持ちわるいと思う時は
SizedBoxで囲みます
SizedBox(
height: double.infinity,
child: SingleChildScrollView(
child: Padding(
padding: EdgeInsets.fromLTRB(16, 48, 16, keyboardSpace + 16),
これでモーダルが全体を占めます。