【发布时间】:2019-04-08 09:38:16
【问题描述】:
我有一个“过滤器”,下面是足球比赛的列表。我用 ListView 包装“过滤器和”listview builder”(以便解决 blablabla 下的重载写入问题)。但是当你正常滚动时会出现一些奇怪的情况。滚动到不起作用的列表。只有“发光效果”,但我从上面的“过滤器菜单”滚动,滚动工作。如何让滚动正常运行?
我截取的代码:
Widget _buildListView(FixtureModel model, BuildContext context) {
return Container(
child: model.getFixturesCount() == 0
? Center(child: Text('No fixtures found'))
: ListView(
shrinkWrap: true,
children: <Widget>[
Column(
children: <Widget>[
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Container(
padding: EdgeInsets.only(left: 10.0),
child: InkWell(
onTap: () => _onTap(context),
child: Container(
margin:
EdgeInsets.only(top: 5.0, bottom: 5.0),
child: Row(
children: <Widget>[
Container(
padding: EdgeInsets.only(left: 5.0),
child:
Icon(FontAwesomeIcons.github)),
Container(
padding: EdgeInsets.only(left: 15.0),
child: Text(
'Liga Premier Inggris',
style: TextStyle(
fontSize: 16.0,
fontWeight: FontWeight.w500),
),
),
Container(
padding: EdgeInsets.only(
left: 5.0, top: 2.0),
child: Icon(Icons.arrow_drop_down,
size: 17.0))
],
)),
)),
Container(
padding: EdgeInsets.only(top: 3.0),
child: Text(
'4',
style:
TextStyle(fontSize: 13.0, color: Colors.grey),
),
),
IconButton(
iconSize: 20.0,
icon: Icon(
FontAwesomeIcons.calendarAlt,
color: Colors.blue,
),
onPressed: () {})
],
),
Divider(
height: 0.0,
),
Container(
padding: EdgeInsets.only(top: 2.0),
child: ListView.builder(
shrinkWrap: true,
itemCount: model.fixtureList == null
? 0
: model.getFixturesCount(),
itemBuilder: (context, int i) {
var fixture = model.fixtureList[i];
return FixtureListItem(fixture: fixture);
},
))
],
)
],
));
}
【问题讨论】:
-
在你的 ListView -add shrinkWrap: true, Physics: NeverScrollableScrollPhysics()
-
@anmol.majhail 您好,先生,希望您状况良好。这个stackoverflow.com/questions/53293164/…你明白我的问题吗?
-
是的,您需要使选项卡栏数据持久化 - 对于 - DetailMatchTab(widget.fixture) 类使用 AutomaticKeepAliveClientMixin ,评论文章就是一个很好的例子 - medium.com/@diegoveloper/…
-
class _DetailMatchTabState 使用 AutomaticKeepAliveClientMixin
{} 扩展 State -
@anmol.majhail 是的,我补充说之前看到pastebin.com/5wENUb1j
标签: list listview dart flutter