【发布时间】:2018-05-25 15:44:17
【问题描述】:
class _SearchState extends State<Search> {
@override
Widget build(BuildContext context) {
widget.id;
return new Scaffold(
appBar: new AppBar(
actions: <Widget>[
new IconButton(
icon: new Icon(Icons.exit_to_app),
onPressed: _getTicketDetails
)
],
centerTitle: true,
title: new Text
("TicketsDetails", style: const TextStyle(
fontFamily: 'Poppins'
,),),),
);
}
_getTicketDetails() async {
print(widget.id);
var userDetails = {};
final response = await http.get(
"https:...", headers: {
HttpHeaders.AUTHORIZATION:
"...
});
List returnTicketDetails = json.decode(response.body);
print(returnTicketDetails);
for (var i = 0; i < (returnTicketDetails?.length ?? 0); i++) {
final ticketresponse = await http.get(
"..${returnTicketDetails[i]["user_id"]
.toString()}", headers: {
HttpHeaders.AUTHORIZATION:
"...
});
userDetails[returnTicketDetails[i]["user_id"]] =
json.decode(ticketresponse.body);
}
print(userDetails);
}
你好!在控制台中,我通过打印(userDetails)得到的输出是:{513549601: {first_name: Test, last_name: Account, profile_image: tempURL。但是,我想动态创建一个Listview:userDetails[user_id][first_name] userDetails[user_id][last_name] 等等......但我担心的是,我应该在哪里实现Listview?因为我已经在最顶部使用了一个 Widget 构建。
【问题讨论】:
-
我在代码中没有看到你的 ListView :)
-
我想创建它,但我无法在第一个 Widget 构建中创建它,因为我想使用 _getTicketDetails() 方法中的变量 userDetails。
-
有没有机会在这个类中创建一个 ListView 并能够使用变量 userDetails?谢谢
-
我不确定你想要什么。如果您在此处创建 ListView 并使用 userDetails,我看不到任何问题
-
我必须使用 FutureBuilder 吗??