问题描述
我遇到一个问题,试图用JSON API响应中的子项填充SliverFixedExtentList
。我有一个函数_getMylistofCustomJsonObjects()
,它返回一个Future<'List<'CustomJsonObject>>
。我对起步还很陌生,但是我对SliverLists
的理解是它们的行为应类似于ListView
。我已经能够使用ListView
和FutureBuilder
来填充其中的ListView.builder
个孩子。但是,更改为SliverList
会使我出错。
下面是我的代码示例
CustomScrollView(
slivers: [
SliverAppBar(),FutureBuilder(
future: _getMylistofCustomJsonObjects,builder: (BuildContext context,AsyncSnapshot snapshot) {
if (snapshot.data != null)
return SliverFixedExtentList(
itemExtent: 150,delegate: SliverChildBuilderDelegate(
(BuildContext context,int index) {
return
Container(
color: Colors.red,child: Text('${snapshot.data[index].Name}'));
},childCount: snapshot.data.length),);
else {
return Padding(
padding: EdgeInsets.only(top:50),//alignment: Alignment.center,child: Stack(
alignment: Alignment.bottomCenter,children: <Widget>[
new CircularProgressIndicator(
value: null,strokeWidth: 4,backgroundColor: Color(0xFFe5ac3b),semanticslabel: "Loading",valueColor:
new AlwaysstoppedAnimation<Color>(Color(0xFF12336c)),),],);
}
},
我想我可能已经接近了,但这是我第一次尝试使用Slivers,所以我不确定是否缺少使这一切起作用的关键部件。以下是我尝试运行此代码时遇到的错误。
Flutter: Another exception was thrown: 'package:Flutter/src/widgets/framework.dart': Failed assertion: line 4345 pos 14: 'owner._debugCurrentBuildTarget == this': is not true.
Flutter: Another exception was thrown: Duplicate GlobalKeys detected in widget tree.
有没有建议用SliverList
填充Future<List<CustomJSONObject>>
?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)