我想根据 JSON API 中的状态动态更改框颜色。例如,已批准 = Colors.green、已拒绝 = Colors.red、已提交 = Colors.blue。
这是我当前应用程序的图像, 我在状态下划线了
如何才能实现呢?
这就是我获取 API 的方式:
Future getCalendar() async{
List<Events> list;
String api = "http://200.0.0.104/api/dynamic/uspGetCalendarEvents_mobile?EmployeeId=5";
var res = await http.get(Uri.encodeFull(api), headers: {"Accept": "application/json"});
var data = json.decode(res.body);
var rest = data["data"] as List;
list = rest.map<Events>((json) => Events.fromJson(json)).toList();
return list;
}
Run Code Online (Sandbox Code Playgroud)
这就是我循环数据的方式:
getCalendar().then((data){
for (var a =0; a < data.length; a++ )
{
_events.addAll({DateTime.parse(data[a].start.toString().replaceAll("-", "")) : data[a].title.toString().split(",") });
}
});
Run Code Online (Sandbox Code Playgroud)
这是我的小部件:
Widget _buildEventList() {
return ListView(
children: _selectedEvents
.map((event) => …Run Code Online (Sandbox Code Playgroud)