我一直在到处搜索,试图找出如何在选择文本字段时让 persistentFooterButtons 移动到键盘上方,但我没有取得任何成功。 persistentFooterButtons 在键盘未激活时工作完美
persistentFooterButtons: [
ElevatedButton(
style: ElevatedButton.styleFrom(
enableFeedback: true,
minimumSize: const Size(double.infinity, 45)),
onPressed: !userInteracts()
? null
: () {
_submit();
},
child: const Text('Continue'))
],
最好用Column,有2个child。 第一个带有 singleScrollView 的 expanded(flex: 1) 第二个带有页脚按钮或小部件;)
您必须将您的内容包装在容器中,容器的底部边距与键盘的高度相匹配。为此,您需要使用
MediaQuery.of(context).viewInsets
。此方法获取被系统 UI 完全遮挡的显示部分,通常被设备的键盘遮挡。
代码示例:
Container(
padding: const EdgeInsets.all(4),
margin: EdgeInsets.only(
bottom: MediaQuery.of(context).viewInsets.bottom),
width: double.infinity,
child: FilledButton.icon(
onPressed: () {
submitForm();
},
icon: const Icon(Icons.check),
label: const Text("Save"),
),
)