Почему ListView.builder показывает только 2 данные, у меня так много документов в cloud_firestore, и я хочу получить эти данные и показать их в ListView, но в точности происходит то, что неважно, сколько там документов возвращает все документы, но когда я использую ListView.builder, чтобы показать эти данные с помощью виджетов, он показывает только 2 виджета.
Future<List<DocumentSnapshot>> getData() async {
var firestore = Firestore.instance;
QuerySnapshot qn =
await firestore.collection("LiveProducts").getDocuments();
return qn.documents;
}
Widget build(BuildContext context) {
return Container(
child: FutureBuilder(
future: getData(),
builder: (_, AsyncSnapshot<List<DocumentSnapshot>> snapshot) {
if (snapshot.connectionState == ConnectionState.waiting) {
return Padding(
padding: const EdgeInsets.only(
top: 295,
),
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: <Widget>[
Center(
child: SpinKitCircle(
color: Color.fromRGBO(91, 74, 127,10),
size: 50.0,
),
),
],
),
);
} else {
return ListView.builder(
// title: Text(snapshot.data[index].data["ProductName"]),
shrinkWrap: true,
itemCount: snapshot.data.length,
itemBuilder: (_, index) {
// if (snapshot.data[index].data["live"] == true) {
print(snapshot.data.length);
return Container(
margin: EdgeInsets.all(15),
height: 300,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(20),
color: Colors.green,
),
child: Center(child: Text('$index'),),
);
// }
},
);
}
}));
}
Одна ужасная вещь случается, я использую Текстовый Виджет вместо Контейнерного Виджета, это показывает отлично все документы. как это
return Center(child:Text(snapshot.data[index].data["ProductName"])),