Flutter 如何在Flatter中向列添加滚动条
我已经在一列中创建了一个包含多个小部件的屏幕。我弄错了。然后我更新了列中容器的高度,然后屏幕没有滚动,因为它有一些固定的大小 然后我从列移动到Flutter 如何在Flatter中向列添加滚动条,flutter,flutter-layout,Flutter,Flutter Layout,我已经在一列中创建了一个包含多个小部件的屏幕。我弄错了。然后我更新了列中容器的高度,然后屏幕没有滚动,因为它有一些固定的大小 然后我从列移动到列表视图,但我的小部件仍然没有滚动 new ListView( shrinkWrap: true, children: <Widget>[ // Author information new Container( heigh
列表视图
,但我的小部件仍然没有滚动
new ListView(
shrinkWrap: true,
children: <Widget>[
// Author information
new Container(
height: MediaQuery
.of(context)
.size
.height * .075,
width: double.infinity,
padding: const EdgeInsets.only(
top: 10.00, right: 10.00),
child: new Row(
children: <Widget>[
new CircleAvatar(
backgroundColor: new Color(0xFF535386),
foregroundColor: new Color(0xFFF4F4F4),
backgroundImage: new NetworkImage(
_feed.authorImageUrl),
radius: 30.00,
child: new Text(
_feed.authorName.substring(0, 1)
.toUpperCase()),
),
new Padding(padding: EdgeInsets.only(
bottom: 5.00, top: 2.00, left: 5.00),
child: new Column(
crossAxisAlignment: CrossAxisAlignment
.start,
children: <Widget>[
new Text(
_feed.authorName,
textAlign: TextAlign.start,
softWrap: true,
style: new TextStyle(
fontSize: 20.0,
),
),
new Text(_feed.dateTime,
textAlign: TextAlign.start,),
],
)),
],
),
),
// Title
new Padding(padding: const EdgeInsets.only(
top: 10.00, left: 10.00),
child: new Text(
_feed.title, textAlign: TextAlign.start,),
),
// content
new Container(
child: new Text(
_feed.content, textAlign: TextAlign.start,),
),
],
),
新建列表视图(
收缩膜:对,
儿童:[
//作者信息
新容器(
高度:MediaQuery
.of(上下文)
.尺寸
.高度*.075,
宽度:double.infinity,
填充:仅限常量边设置(
顶部:10.00,右侧:10.00),
孩子:新的一排(
儿童:[
新圆星(
背景颜色:新颜色(0xFF535386),
foregroundColor:新颜色(0xFFF4),
背景图片:新网络图片(
_feed.authorImageUrl),
半径:30.00,
儿童:新文本(
_feed.authorName.substring(0,1)
.toUpperCase()),
),
新填充(填充:仅限EdgeInsets(
底部:5.00,顶部:2.00,左侧:5.00),
子:新列(
crossAxisAlignment:crossAxisAlignment
开始
儿童:[
新文本(
_feed.authorName,
textAlign:textAlign.start,
软包装:是的,
样式:新文本样式(
字体大小:20.0,
),
),
新文本(_feed.dateTime,
textAlign:textAlign.start,),
],
)),
],
),
),
//头衔
新填充(填充:仅限常量边集)(
顶部:10.00,左侧:10.00),
儿童:新文本(
_feed.title,textAlign:textAlign.start,),
),
//内容
新容器(
儿童:新文本(
_feed.content,textAlign:textAlign.start,),
),
],
),
您的列表视图
看起来不错,但我猜它被包装在一个固定大小的小部件中,如列
或行
(黄色和黑色的错误表示内容大于可用空间),因此您应该将列表视图
包装在一个扩展的
小部件中,如下所示:
new Expanded(
child: new ListView(
shrinkWrap: true,
children: <Widget>[
//Your content
],
)
)
新扩展(
子:新列表视图(
收缩膜:对,
儿童:[
//你的内容
],
)
)
使用我使用的@GünterZöchbauer列表视图
也不起作用。请检查以上代码。内容是否高于列表?尝试启用debugPaintSizeEnabled=true代码>是的,我正在这个Text()
中加载完整的论坛提要,因此对于某些提要,内容更高。此论坛应用程序。完整的论坛帖子及其评论将加载到此屏幕上。这就是为什么我要查看滚动。我认为MediaQuery导致了您的问题。你想达到什么效果?使用扩展的Expanded
可能是一种更好的实现比例布局的方法,如果您希望这样做的话。