我有以下代码:
return Scaffold(
appBar: AppBar(
title: Text('Sample Code'),
),
body: ListView(
padding: const EdgeInsets.all(20.0),
children: <Widget>[
TextField(
decoration: InputDecoration(labelText: "Text"),
),
TextField(
decoration: InputDecoration(labelText: "Text"),
),
TextField(
decoration: InputDecoration(labelText: "Text"),
),
],
),
bottomNavigationBar: BottomAppBar(
child: Container(
height: 50.0,
),
),
floatingActionButton: FloatingActionButton(
onPressed: () {},
child: Icon(Icons.add),
),
floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked,
);每当键盘显示要在TextField中输入文本时,FloatingActionButton就会移动到键盘的顶部,如下所示:

我想要的是,按钮停留在底部的导航栏,并没有移动时,键盘出现。我将resizeToAvoidBottomPadding: false,添加到Scaffold中,这可以防止按钮移动,但在键盘显示时也会阻止ListView移动以保持可见。
发布于 2020-07-30 03:19:20
只需使用Scaffold内部的属性resizeToAvoidBottomInset: false
它将立即解决这个问题。
https://stackoverflow.com/questions/56308831
复制相似问题