1. ホーム
  2. keyboard

[解決済み] キーボードが表示されると、Flutterのウィジェットがリサイズされます。これを防ぐにはどうしたらよいですか?

2022-04-13 21:06:06

質問

このようなExpandedウィジェットのカラムがあります。

 return new Container(
      child: new Column(
        crossAxisAlignment: CrossAxisAlignment.stretch,
        children: <Widget>[
          new Expanded(
            flex: 1,
            child: convertFrom,
          ),
          new Expanded(
            flex: 1,
            child: convertTo,
          ),
          new Expanded(
            flex: 1,
            child: description,
          ),
        ],
      ),
    );

こんな感じです。

convertFrom には、TextFieldが含まれています。このテキストフィールドをタップすると、Androidキーボードが画面に表示されます。これによって画面サイズが変わるので、ウィジェットはこのようにリサイズされます。

キーボードを画面にオーバーレイ表示させて、Columnのサイズを変更しないようにする方法はありますか?もし私が Expanded ウィジェットの高さをハードコードすると、ウィジェットのサイズは変わりませんが、キーボードが表示されたときに黒と黄色のストライプのエラーが発生します(十分なスペースがないため)。また、これはすべてのスクリーンサイズに対して柔軟ではありません。

これはAndroid特有なのか、Flutter特有なのかよくわかりません。

解決方法は?

回答を更新しました

resizeToAvoidBottomPadding は現在 非推奨 .

更新された解決策は resizeToAvoidBottomInset プロパティを false .


オリジナル回答

あなたの Scaffold を設定します。 resizeToAvoidBottomPadding プロパティを false .