编辑:
我收到报告说这是 When the keyboard appears, the Flutter widgets resize. How to prevent this? 的副本.虽然这是相关的,但这是一个不同的问题。我希望键盘与 UI 重叠,直到它到达具有焦点的 TextField。这是 Android 上的默认行为
原文:
我是一名 Android 开发人员,刚开始使用 Flutter。我想创建一个登录屏幕。我想要 TextField
上方的图像。所以我想,我使用 Stack
将图像放在背景上,并在下面放置一些 TextField
。
问题在于,键盘一出现,就会将所有内容向上推。在 Android 上,通常键盘仅在必要时才会向上推,直到到达 EditText
。
我尝试将 resizeToAvoidBottomPadding
设置为 false,但随后没有任何 Action (当然)并且 TextField
被键盘覆盖。
我记得以前玩过 iOS,这是默认行为,也许我应该重新考虑我的布局?
目前,我将它包装在 ListView
中,以便用户能够在键盘出现时滚动。
这是我的布局(仅用于测试)
@override
Widget build(BuildContext context) {
this.context = context;
return new Scaffold(
key: _scaffoldKey,
body: new Stack(
children: <Widget>[loginImage(), new Column(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[new TextField(), new TextField(),
new TextField(), new TextField(),
new TextField(), new TextField()],
)])
);
}
:
最佳答案
我在 CupertinoTextField()
中设置 autoFocus: true
时遇到了这个问题,并通过在 中设置
.resizeToAvoidBottomInset: false
来修复它脚手架()
resizeToAvoidBottomPadding
现已弃用。
使用 resizeToAvoidBottomInset
。
https://stackoverflow.com/questions/49840074/
相关文章:
google-maps - Flutter:如何使用新的 Marker API 向 Google M
dart - 如何更改手机屏幕上的 flutter 应用程序名称显示?
flutter - 如何在 flutter 中检索当前的类名?
flutter - 导航器使用 pushNamed 传递参数
search - Flutter - 更改 SearchDelegate 的搜索提示文本
dart - Flutter - 通过滑动或按下 floatingActionButton 来展开
flutter - 如何在 Flutter 的文本输入字段中配置自动大写行为?
android - 如何在文本小部件 flutter 中显示 html 字符串