Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.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
Listview 颤振错误:[错误:颤振/lib/ui/ui_-dart_-state.cc(157)]未处理的异常:type';列表<;动态>';不是类型为';地图<;字符串,动态>';_Listview_Flutter - Fatal编程技术网

Listview 颤振错误:[错误:颤振/lib/ui/ui_-dart_-state.cc(157)]未处理的异常:type';列表<;动态>';不是类型为';地图<;字符串,动态>';

Listview 颤振错误:[错误:颤振/lib/ui/ui_-dart_-state.cc(157)]未处理的异常:type';列表<;动态>';不是类型为';地图<;字符串,动态>';,listview,flutter,Listview,Flutter,我想从api获取列表视图并将其放入我的应用程序屏幕,但它显示了这一点 [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: type 'List<dynamic>' is not a subtype of type 'Map<String, dynamic>' 我试图添加到列表语句,但也不起作用 我想问题在这里: Map res=json.decode(response.body) 您的jso

我想从api获取列表视图并将其放入我的应用程序屏幕,但它显示了这一点

[ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: type 'List<dynamic>' is not a subtype of type 'Map<String, dynamic>'

我试图添加到列表语句,但也不起作用

我想问题在这里:

Map res=json.decode(response.body)

您的json返回了一个映射列表:

响应数据:[{“countryName”:“埃及”,“countryImage”:”https://i.ytimg.com/vi/TWaReNkjTLk/maxresdefault.jpg},{“countryName”:“Canada”,“countryImage”:https://pix10.agoda.net/geo/country/100/3_100_canada_02.jpg?s=1920x},{“countryName”:“US”,“countryImage”:https://www.green-card.com/assets/Uploads/living-usa-states-florida-green-card.jpg"}]

但是,您正在将响应作为列表分配给映射

尝试更改
Map res=json.decode(response.body)
to
List res=json.decode(response.body)


我希望有帮助

您的响应数据返回地图列表

如果您确定只有一张地图(国家或其他什么),那么请更改您的地图

Map<String,dynamic> res = json.decode(response.body);
Map<String,dynamic> res = json.decode(response.body);
Map res=json.decode(response.body);

Map res=json.decode(response.body)[0];
如果有个地图(国家或其他),则更改您的

Map<String,dynamic> res = json.decode(response.body);
Map<String,dynamic> res = json.decode(response.body);
Map res=json.decode(response.body);

List res=json.decode(response.body);

如果您的问题有json响应,那就好了。@SeaklengSay我现在使用类似于json的文档进行了更改。有关高级json解析示例,请参见此
Map<String,dynamic> res = json.decode(response.body)[0];
Map<String,dynamic> res = json.decode(response.body);
List<Map<String,dynamic>> res = json.decode(response.body);