【发布时间】:2019-02-14 05:43:57
【问题描述】:
我想在 ListView 中显示我的 shopList 的每个项目,但我找不到它一直显示相同记录的原因。请帮忙解决这个问题。
这里有代码,从firebase数据库中获取数据。
databaseReference.once().then((DataSnapshot snapshot) {
Map<dynamic, dynamic> getMap = snapshot.value;
getMap.forEach((k, v) {
Map<dynamic, dynamic> f = v;
shop.key = k;
shop.shopName = f["ShopName"];
shop.tel = f["ShopTel"];
shop.address = f["ShopAddress"];
shop.thumbnail = f["Thumbnail"];
debugPrint(k);
shopList.add(shop);
debugPrint(shopList[shopList.length-1].shopName);
});
});
调试打印结果:
- 颤振:-LLySYDHHHx9WtCvKPrO
- 扑:shop1111
- 颤动:-LLyXwR0nnAcx6_H4cYy
- 颤振:shop2222
这里是 ListView 的代码:
child: Flexible(
child: new ListView.builder(
itemCount: shopList.length,
itemBuilder: (context, index) {
return new Card(
color: Colors.red,
//elevation: 2.0,
child: new ListTile(
title: new Text("Name: ${shopList[index].key}"),
),
);
}),
),
模拟器结果:
【问题讨论】:
-
为什么不使用 Firebase 动画列表?你有一个叫做商店的对象吗?
标签: firebase listview firebase-realtime-database flutter builder