Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.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 如何根据sqlite数据库更改图标颜色?_Flutter_Dart - Fatal编程技术网

Flutter 如何根据sqlite数据库更改图标颜色?

Flutter 如何根据sqlite数据库更改图标颜色?,flutter,dart,Flutter,Dart,我已经创建了一个数据库,其中包括一个收藏夹列表,我想获取数据,无论该项目是否在收藏夹列表中,以在屏幕上呈现它 icon: Icon ( await DBProvider.db .searchFavItem(widget._items[index].idItem) ? Icons.favorite : Icons.favorite_border), 但是,我

我已经创建了一个数据库,其中包括一个收藏夹列表,我想获取数据,无论该项目是否在收藏夹列表中,以在屏幕上呈现它

icon: Icon ( await DBProvider.db
                          .searchFavItem(widget._items[index].idItem)
                      ? Icons.favorite
                      : Icons.favorite_border),
但是,我收到一条错误消息“wait表达式只能在异步函数中使用。 尝试将函数体标记为“async”或“async*”

我不知道如何在这种语句中添加函数。
非常感谢。

要解决此问题,您需要先加载
异步
值,然后将返回的值传递给
图标小部件
,这是因为
图标小部件
图标
属性不需要
异步
值。因此,您将无法在此处使用
wait

一种方法是使用
FutureBuilder
小部件,其他方法包括使用
statemanagement
在加载数据时管理UI的状态