我当前将列窗口小部件包装在SingleChildScrollView()中,并在Scaffold()上设置resizeToAvoidBototmInset:false,但是在选择Textfields时屏幕不会自动向上滚动。理想情况下,我希望用户在第二个字段中输入数据时显示提交按钮。当前,当键盘可见时,它会隐藏在某些设备上。
Scaffold(
resizeToAvoidBottomInset: false,
body: SingleChildScrollView(
child: SafeArea(
child: Stack(
children: <Widget> [
CustomPaint(),
Column(children: <Widget>[
TextField(),
TextField(),
RaisedButton(),
])
]
)
)
)
)
这是当前格式的样子。我在文本字段上没有FocusNode(),但确实考虑过基于何时可见键盘来提高文本字段,但这会干扰我的自定义绘画背景,并且不希望产生这种效果。
从概念的角度来看,我缺少一些东西来阻止屏幕自动向上滚动。
尝试使用以下代码:
GlobalKey globalKey = GlobalKey();
...
TextField(
onTap: ()async{
await Future.delayed(Duration(milliseconds: 500));
RenderObject object = globalKey.currentContext.findRenderObject();
object.showOnScreen();
},
),
RaisedButton(
key: globalKey,
onPressed: (){},
),
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句