【问题标题】:How to associate the json data to flutter list?如何将 json 数据关联到颤振列表?
【发布时间】:2020-12-11 14:56:24
【问题描述】:

我能够在颤振应用程序中获取 json 数据。 现在我想将该数据与List 关联起来。

我该怎么做?

List companydetails;

var jsonResponse = json.decode(response.body);

JSON 数据

 {"error":"false","content":[
{
"id":"22","name":"Johnny",},

{"id":"23","name":"Maria",},
]
}

我需要根据获取的数据在颤振中构建一个列表视图。

【问题讨论】:

    标签: json flutter flutter-listview


    【解决方案1】:

    你可以使用这个模型:

    class CompanyDetail {
      String error;
      List<Content> content;
    
      CompanyDetail({this.error, this.content});
    
      CompanyDetail.fromJson(Map<String, dynamic> json) {
        error = json['error'];
        if (json['content'] != null) {
          content = new List<Content>();
          json['content'].forEach((v) {
            content.add(new Content.fromJson(v));
          });
        }
      }
    
      Map<String, dynamic> toJson() {
        final Map<String, dynamic> data = new Map<String, dynamic>();
        data['error'] = this.error;
        if (this.content != null) {
          data['content'] = this.content.map((v) => v.toJson()).toList();
        }
        return data;
      }
    }
    
    class Content {
      String id;
      String name;
    
      Content({this.id, this.name});
    
      Content.fromJson(Map<String, dynamic> json) {
        id = json['id'];
        name = json['name'];
      }
    
      Map<String, dynamic> toJson() {
        final Map<String, dynamic> data = new Map<String, dynamic>();
        data['id'] = this.id;
        data['name'] = this.name;
        return data;
      }
    }
    

    然后绑定Json数据:

    var companyDetail = CompanyDetail.fromJson(json.decode(response.body));
    

    现在在您的 ListView 小部件中使用内容列表:

    companyDetail.content
    

    示例(确保content 不为空):

    ....
    ListView.builder
      (
        itemCount: companyDetail.content.length,
        itemBuilder: (BuildContext ctxt, int index) {
         return new Text(companyDetail.content[index]);
        }
      ),
    ...
    

    【讨论】:

    • 我是这个 api 学习 Flutter 的新手。我将如何访问companyDetail.content 中的列表视图生成器中的元素,请指导
    猜你喜欢
    • 2020-06-23
    • 1970-01-01
    • 2020-11-17
    • 1970-01-01
    • 2021-04-09
    • 2018-12-23
    • 1970-01-01
    • 2020-11-14
    • 2019-04-20
    相关资源
    最近更新 更多