我目前正在为类似信息亭的设备编写 Flutter 应用程序。该设备将以横向模式安装,底部有一个集成的条码扫描器。
该设备几乎将所有时间都花在单一布局上:
目前,整个主体都在 SingleChildScrollView 中。当用户点击文本输入框时,这允许视图“向上滑动”。然后当键盘关闭时,视图“滑”回。
我想要做的是将底部的“扫描票下方”行固定到视图的底部,至少在可见时(当键盘没有覆盖它时)。到目前为止,它是一个 flex 布局,它并没有深入到底部。
查看带有调试涂料的图像:粉红色框应该在底部,它上面的所有内容都应该在可滚动视图中。

我开始考虑多种选择。我不想要固定位置,因为我们最终还将在具有各种屏幕尺寸的 iDevice 上提供解决方案。
这是我目前的脚手架主体:
Container(
constraints: BoxConstraints.expand(),
child: SingleChildScrollView(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
mainAxisSize: MainAxisSize.min,
children: [
Padding(
padding: EdgeInsets.only(top: 50.0, bottom: 20.0),
child: Text(_message ?? "Welcome!",
textAlign: TextAlign.center,
style:
TextStyle(fontSize: 45.0, color: Colors.black)),
),
Padding(
padding: EdgeInsets.all(20.0),
child: Text("Scan ticket below or Search for your Transaction",
style:
TextStyle(fontSize: 25.0, color: Colors.black)),
),
Row(
mainAxisAlignment: MainAxisAlignment.center,
mainAxisSize: MainAxisSize.max,
children: [
Expanded(
flex: 4,
child: Container(
margin: EdgeInsets.symmetric(
horizontal: 50.0, …Run Code Online (Sandbox Code Playgroud)