我正在尝试在列表的开头添加标题项,因此这是我使用firebase构建标题的方法
new Expanded(
child: new StreamBuilder(
stream: Firestore.instance
.collection("users")
.document("dana")
.collection("Channels")
.snapshots(),
builder: (context, snapshot) {
return new ListView.builder(
scrollDirection: Axis.vertical,
itemCount: snapshot.data.documents.length,
itemBuilder: (context, index) => _buildList(
context, snapshot.data.documents[index]),
);
}),
)
“ _ buildList”只是小部件
Widget _buildListItem(BuildContext context, DocumentSnapshot document)
所以我基本上迷路了,我不知道如何添加另一个Widget作为标题 有什么建议吗?
答案 0 :(得分:1)
当列表位于索引0上时,您可以返回“标题”窗口小部件(您想要在列表视图上方但仍在其中的窗口小部件):
return new ListView.builder(
scrollDirection: Axis.vertical,
itemCount: snapshot.data.documents.length,
itemBuilder: (context, index) {
if (index == 0) {
return someWidget, // return the widget you want as "header" here
} else {
return _buildList( context, snapshot.data.documents[index-1]),
}
}
);