Atualmente, tenho um SteamBuilder buscando dados de uma coleção de "usuário"
return ListView.builder(
itemCount: snapshot.data.documents.length,
itemBuilder: (context, index) {
DocumentSnapshot document = snapshot.data.documents[index];
// else
return user.uid == document['uid']
? null //null should not be returned but the user should be excluded in the below ListTile
// this is causing only the users up to the logged-in user to display and then terminating without rendering other widgets
: ListTile(
contentPadding: EdgeInsets.all(10),
title: Text(
document['name'],
style: TextStyle(
fontSize: 30,
fontWeight: FontWeight.bold,
fontStyle: FontStyle.italic),
),
);
});
},
),
Qual lógica devo implementar para excluir o usuário conectado da renderização, mas exibir todos os outros, posso passar um where () para o instantâneo?
Estou enfrentando o mesmo problema, mas aqui está a solução no código de exemplo abaixo, espero que funcione para você.
return ListView.separated(
itemBuilder: (context, index) {
return InkWell(
onTap: () {},
child: Container(
height: snapshot.data.documents[index].data['id'] != uid
? 70.0
: 0.0, // this line for hiding specific cell...
width: MediaQuery.of(context).size.width,
child: Column(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Row(
mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.max,
children: <Widget>[
Padding(
padding: const EdgeInsets.all(8.0),
child: Text(snapshot
.data.documents[index].data['nickname']))
],
)
],
),
),
);
},
separatorBuilder: (context, index) {
return snapshot.data.documents[index].data['id'] != uid
? Divider()
: Container(); // this line hide the devider for specific cell..
},
itemCount: snapshot.data.documents.length);
Este artigo é coletado da Internet.
Se houver alguma infração, entre em [email protected] Delete.
deixe-me dizer algumas palavras