Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 颤振-尝试从AssetImage加载时发生超时_Flutter_Dart_Colors_Palette_Color Palette - Fatal编程技术网

Flutter 颤振-尝试从AssetImage加载时发生超时

Flutter 颤振-尝试从AssetImage加载时发生超时,flutter,dart,colors,palette,color-palette,Flutter,Dart,Colors,Palette,Color Palette,我正在尝试使用调色板生成器从图像中提取颜色。我将图像传递给方法来生成调色板,以便从中提取主色调。但是,当我尝试获取该调色板颜色时,错误出现为“尝试从AssetImage(bundle:null,name:1.jpg)加载时超时”,日志cat显示“无法加载asset:1.jpg” 但是,如果我使用image.asset()加载图像,则该图像在构建方法中的加载是完美的 注意-不存在颤振资源文件夹链接问题 这是我的密码 Future<PaletteGenerator>_updatePale

我正在尝试使用调色板生成器从图像中提取颜色。我将图像传递给方法来生成调色板,以便从中提取主色调。但是,当我尝试获取该调色板颜色时,错误出现为“尝试从AssetImage(bundle:null,name:1.jpg)加载时超时”,日志cat显示“无法加载asset:1.jpg

但是,如果我使用image.asset()加载图像,则该图像在构建方法中的加载是完美的

注意-不存在颤振资源文件夹链接问题

这是我的密码

Future<PaletteGenerator>_updatePaletteGenerator ()async
{
  paletteGenerator = await PaletteGenerator.fromImageProvider(
    Image.asset("1.jpg").image,
  );
return paletteGenerator;
}

Future\u updatePaletGenerator()异步
{
paletteGenerator=等待paletteGenerator.fromImageProvider(
Image.asset(“1.jpg”).Image,
);
返回信号发生器;
}
上述方法用于生成调色板 现在是我的构建方法

 @override
  Widget build(BuildContext context) {

    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text("Image from assets"),
        ),
        body: Column (
            mainAxisAlignment: MainAxisAlignment.center,
              children:<Widget>[
                Row(
                    mainAxisAlignment: MainAxisAlignment.start,
                    children:<Widget>[
                      new Image.asset('assets/images/6.jpg',
                        color: face, colorBlendMode:BlendMode.modulate ,
                        fit:BoxFit.cover,
                        height: 50,
                        width: 50,
                      ),


                new Image.asset('assets/images/1.jpg',
              color: face, colorBlendMode: BlendMode.modulate,
            fit:BoxFit.cover,
                  height: 200,
                  width: 200,
          ),]),



                FutureBuilder<PaletteGenerator>(
                  future: _updatePaletteGenerator(), // async work
                  builder: (BuildContext context, AsyncSnapshot<PaletteGenerator> snapshot) {
                    switch (snapshot.connectionState) {
                      case ConnectionState.waiting: return new Text('Loading....');
                      default:
                        if (snapshot.hasError)
                          return new Text('Error: ${snapshot.error}');
                        else
                          return new Text('Result: ${snapshot.data.dominantColor}');
                    }
                  },
                )





          //   <-- image
                ])),
    );
  }

@覆盖
小部件构建(构建上下文){
返回材料PP(
家:脚手架(
appBar:appBar(
标题:文本(“来自资产的图像”),
),
正文:专栏(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
划船(
mainAxisAlignment:mainAxisAlignment.start,
儿童:[
新建Image.asset('assets/images/6.jpg',
颜色:face,colorBlendMode:BlendMode.modulate,
适合:BoxFit.cover,
身高:50,
宽度:50,
),
新建Image.asset('assets/images/1.jpg',
颜色:face,colorBlendMode:BlendMode.modulate,
适合:BoxFit.cover,
身高:200,
宽度:200,
),]),
未来建设者(
future:_UpdatePaletGenerator(),//异步工作
生成器:(BuildContext上下文,异步快照){
交换机(快照.连接状态){
case ConnectionState.waiting:返回新文本('Loading…');
违约:
if(snapshot.hasError)
返回新文本('Error:${snapshot.Error}');
其他的
返回新文本('Result:${snapshot.data.dominantColor}');
}
},
)

//问题在于,在您的
\u updatePaletteGenerator
上,您提供给Image.asset()的路径是错误的。您必须给
'assets/images/1.jpg'
问题在于在您的
\u updatePaletteGenerator
上,您提供给Image.asset()的路径是错误的。你必须给
'assets/images/1.jpg'

谢谢我在这个愚蠢的错误上浪费了我的3个小时。非常感谢你谢谢我在这个愚蠢的错误上浪费了我的3个小时。非常感谢你