Menampilkan data json di dalam field dengan flutter

ini gambar data json di dalam field . saya mau menampilkan data di kolom activity.

ini script yang sudah saya buat

FutureBuilder(
  future: UserController.getActivity(_selectedUser),
   builder: (context, snapshot) {
    if(snapshot.hasData){
       return Column(
           children: <Widget>[
               Expanded(
                  child: ListView.separated(
                       itemCount: snapshot.data.length,
                       itemBuilder: (context, position){
                        var item = snapshot.data.elementAt(position);
                        return Text(item[0]["activity "]);
                       }
                   ),
                )
            ],
           );
         }

         return Center(
            child: CircularProgressIndicator(),
         );
      },
   ),

waktu di run muncul error Assertion failed: is not true

avatar oceanli
@oceanli

63 Kontribusi 2 Poin

Diperbarui 4 tahun yang lalu

1 Jawaban:

Untuk pertama, object JSON dalam Dart tipenya adalah Map&lt;String, dynamic&gt;, error tersebut ada 2 kemungkinan, Data berupa Null, atau Data yang seharusnya ditampilkan berupa String, malah berupa Object lainnya

oh iya, tips aja, buat PODO (Plain old dart object) dengan https://app.quicktype.io/ untuk mempermudah memanggil field JSON...

Misal dari JSON berikut <pre> { "key 1": "nilai 1", "key 2": 2, "key 3": true, "key 4": null } </pre>

maka akan jadi

<pre> class Contoh { String key1; int key2; bool key3; dynamic key4;

Contoh({
    this.key1,
    this.key2,
    this.key3,
    this.key4,
});

factory Contoh.fromJson(Map&amp;lt;String, dynamic&amp;gt; json) =&amp;gt; Contoh(
    key1: json[&quot;key 1&quot;],
    key2: json[&quot;key 2&quot;],
    key3: json[&quot;key 3&quot;],
    key4: json[&quot;key 4&quot;],
);

Map&amp;lt;String, dynamic&amp;gt; toJson() =&amp;gt; {
    &quot;key 1&quot;: key1,
    &quot;key 2&quot;: key2,
    &quot;key 3&quot;: key3,
    &quot;key 4&quot;: key4,
};

} </pre>

untuk menggunakannya cukup <pre> Contoh objContoh = Contoh.fromJson(jsonObj);

print(objContoh.key1); </pre>

avatar nizwar
@nizwar

12 Kontribusi 2 Poin

Dipost 4 tahun yang lalu

Login untuk ikut Jawaban