在ListView.builder上显示来自Firestorage的图像

时间:2019-06-11 14:00:04

标签: flutter dart

我正在使用Firestore来存储数据,并在Firestorage中用于文件和图像,因此我在使用StreamBuilder来根据Firestore数据加载列表,我想根据Firestore文件名下载图像,但没有发生

我尝试过的是,在其中创建了一个新方法来执行代码以获取下载url,但该方法不起作用

db.create_all()
child: StreamBuilder(
                stream: Firestore.instance.collection('data').snapshots(),
                builder: (BuildContext context,
                    AsyncSnapshot<QuerySnapshot> snapshot) {
                  if (!snapshot.hasData)
                    return Container(
                        child: Center(child: CircularProgressIndicator()));
                  return ListView.builder(
                      itemCount: snapshot.data.documents.length,
                      itemBuilder: (BuildContext context, int index) {
                        return Card(
                          child: Column(
                            children: <Widget>[
                              Card(
                                semanticContainer: true,
                                clipBehavior: Clip.antiAliasWithSaveLayer,
                                child: Image.network(
                                   imageLoader(snapshot.data.documents[index].data['flie_ref'].toString()),
                                  fit: BoxFit.fill,
                                ),
                                shape: RoundedRectangleBorder(
                                  borderRadius: BorderRadius.circular(0),
                                ),
                                elevation: 0,
                                margin: EdgeInsets.all(10),
                              ),
                              Padding(
                                padding: EdgeInsets.only(left: 6, right: 6),
                                child: Card(
                                  elevation: 0,
                                  child: ExpansionTile(
                                    leading: CircleAvatar(
                                      child: Text(snapshot
                                          .data.documents[index].data['amount']
                                          .toString()),
                                    ),
                                    title: Text(
                                      snapshot
                                          .data.documents[index].data['desc']
                                          .toString(),
                                      overflow: TextOverflow.ellipsis,
                                    ),
                                    children: <Widget>[
                                      Text(snapshot
                                          .data.documents[index].data['desc']
                                          .toString()),
                                      SizedBox(
                                        height: 10,
                                      ),
                                    ],
                                  ),
                                ),
                              ),
                            ],
                          ),
                        );
                      });
                },
              ),

我希望输出加载相应的图像,但输出是错误:无法将参数类型'Future'分配给参数类型'Widget'

0 个答案:

没有答案
相关问题