0

I want to convert this ListView into ListView.builder, but somehow I could not figure out how I could do it. Any help would be greatly appreciated.

ListView(
  children: snapshot.data!.docs.map((doc) {
    final dynamic data = doc.data();
    return Visibility(
        child:
        ContactListTileField(
            text: data['contactName'].toString(),
            iconData: Icons.delete,
            function: () async {
              DialogBox.dialogBox(
                  "Do you really want to delete ${data['contactName'].toString().capitalize}? "
                  , context
                  , (){
                deleteContact(,context);
              });


            })

    );

  }).toList(),
)
Junaid Khalid
  • 811
  • 2
  • 11
  • 26

1 Answers1

2
ListView.builder(
      itemCount: snapshot.data!.docs.length,
      itemBuilder: (context, index) {
        final doc = snapshot.data!.docs[index];
        final dynamic data = doc.data();
        return  Visibility(
          child: ContactListTileField(
            text: data['contactName'].toString(),
            iconData: Icons.delete,
            function: () async {
              DialogBox.dialogBox(
                  "Do you really want to delete ${data['contactName'].toString().capitalize}? "
                  , context
                  , (){
                deleteContact(,context);
              });
            })
    );}
    )

Try this...

Jannik
  • 635
  • 1
  • 6
  • 14