'package:flutter/src/painting/image_resolution.dart':失败的断言:第 174 行 pos 15:'assetName != null':不是真的

时间:2021-06-14 14:49:23

标签: firebase image flutter

我有一个网格视图来显示图像,但是图像存储在我的本地“assets/images/xxxx.png”中。我只将图像名称(资产/图像/xxxx.png)存储到 Firebase 中,但不确定我的做法是对还是错。

不得不提到他们在“pubspec.yaml”文件和图像名称中没有任何错误,因为我已经手动显示图像,但是我想根据某些条件更改图片,因此将图像保存到 Firebase并在网格视图中检索它。

来自调试控制台的输出

从检索到的 Firebase 的输出中获得了如下所示的图像名称,但它没有显示图像,如果我想将图像而不是图像的名称保存到 Firebase 中从 Firebase 检索图像?或者有什么方法可以保存名称,一旦调用图像的名称,它就会显示图像,因为它已经在“assets/images/xxx.png”中声明,所以我不知道如何让图像显示.将图像名称或图像本身存储到 Firebase 并检索它

"imageUrl":"assets/images/Materials-03.png"

这是我检索所有数据的方式,但是已经打印了所有数据并且出现了这个错误,所以这是否是图像的问题也不确定

显示

      @override
      Widget build(BuildContext context) {
        final appProfileData = Provider.of<UserProfileLogic>(context);
        return GridView.builder(
          padding: const EdgeInsets.all(10.0),
          itemCount: appProfileData.appitems.length,
          itemBuilder: (ctx, i) => ChangeNotifierProvider.value(
            value: appProfileData.appitems[i],
            child: AppGetFromLogic(),
          gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
            //define how gridview been structure. E.g: Column
            crossAxisCount: 2, //how many column
            childAspectRatio: 3 / 2,
            crossAxisSpacing: 10, //spacing between column
            mainAxisSpacing: 10, //spacing of the row
          ),
        );
      }

“AppGetFromLogic”

 @override
      Widget build(BuildContext context) {
 final appCalling = Provider.of<AppProfile>(context, listen: false);
        return Card(
          child: Hero(
            tag: appID,
            child: InkWell(
              onTap: () {},
              child: GridTile(
                footer: GridTileBar(
                  backgroundColor: Colors.black54,
                  title: Text(
                    appCalling.title,
                    textAlign: TextAlign.center,
                  ),
                ),
                child: Image.asset(
                  appCalling.appImage,
                  fit: BoxFit.cover,
                ),
              ),
            ),
          ),
        );

0 个答案:

没有答案