Я пытаюсь загрузить группу имен из API, используя ListView
builder.
My api
имеет параметр index, который нужно увеличивать на 50 каждый раз, когда пользователь достигает конца списка
поэтому я прикрепил ScrollController
к своему ListView
.
Значение индекса в начале равно 0.
Я звоню на api
первым в initState
Follwoing - мой код, когда пользователь достигает конца списка
scrollController.addListener(() {
if (scrollController.position.pixels ==
scrollController.position.maxScrollExtent) {
index += 50;
//Calling the api again here
}
});
Теперь, используя этот способ, список загружается нормально. Предположим, что пользователь загрузил все данные, и предположим, что индекс равен 250, и теперь пользователь решает
чтобы поместить приложение в фоновый режим и через некоторое время снова открыть приложение, последние 50 элементов снова добавляются в мой список, что я не понимаю, почему.
Я использую StreamBuilder
с bloc
рисунком
if (snapshot.data != null) {
studentList.addAll(snapshot.data.studentList);
}
Я устал от отдельного оператора, но он не работает для моего случая
Observable<StudentListModel> get studentList => _studentList.stream.distinct();