我遇到了一个问题,用new Expanded()
Package TextField
。当试图搜索textfield
中的内容时,它的show me bottom overflow by 30px
。下面是我的代码:
Widget build(BuildContext context) {
return new Scaffold(
body:
Column(
children: <Widget>[
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
IconButton(icon: Icon(Icons.search), onPressed: () {
setState(() {
});
}),
new Flexible(
child: new TextField(
onChanged: (String value) {
onchange(value);
},
maxLines: 1,
autocorrect: true,
// decoration: const InputDecoration(helperText: "Search"),
style: new TextStyle(fontSize: 10.0, color: Colors.black),
),
),
_text != null ? IconButton(
icon: Icon(Icons.close), onPressed: (){
}) : new Container(),
IconButton(icon: Icon(Icons.bookmark_border), onPressed: () {}),
],
),
new Expanded(
child: FilstList(searchtext: _text,)
),
],
),
);
}
}
9条答案
按热度按时间qojgxg4l1#
这个问题有两个解决方案。
1.将
resizeToAvoidBottomPadding: false
添加到Scaffold
1.将您的
FilstList(searchtext: _text,)
放入scrollableView
(如SingleChildScrollView
或ListView
)jw5wzhpr2#
使用脚手架属性“resizeToAvoidBottomPadding:false”和“SingleChildScrollView”作为支架主体的父级:
这将解决问题。
8ftvxx2r3#
您应该使用
resizeToAvoidBottomInset
如果遇到溢出错误问题,请使用
SingleChildScrollView
。lyfkaqu14#
我遇到了一个类似的问题,并通过以下方式解决了它:
您可以使用SingleChildScrollView或ListView Package 它。
o2gm4chl5#
将resizeToAvoidBottomPadding设置为假,在脚手架中:
更新它是更好的解决方案:删除列并将其放置为ListView
因为如果你在较小的设备上运行这个应用程序,底部的项目将从显示屏幕上消失和隐藏,这将对应用程序用户不利。
gv8xihay6#
使用resizeToAvoidBottomInset:false是最好的解决方案。
wwtsj6pe7#
做两路
一号。
问题是,当你这样做时,当你选择输入框时,正文内容永远不会出现在顶部。
最佳做法
单个子滚动视图小部件
j8ag8udp8#
将
CustomScrollView
与SliverToBoxAdapter
配合使用:s5a0g9ez9#
已使用
SigleChildScrollView