введите описание изображения здесь В настоящее время я показываю CustomScrollView
внутри bottomSheet.
CustomScrollView(
controller: scrollController,
slivers: [
SliverPersistentHeader(
pinned: true,
delegate: MonthViewHeader(widget.weekDays),
),
SliverList(
delegate: SliverChildBuilderDelegate((context, index) {
return MonthView(
index == 0 ? widget._today : Jalali(widget._today.year, widget._today.month, 1).addMonths(index),
index != 0,
selectedDate,
(DateTime date) => {
setSheetState(() {
selectedDate = date;
widget.onDateChange(date);
})
});
}),
)
],
)
SliverPersistentHeader
остается вверху списка при прокрутке, а SliverList
прокручивается под ним. Я хочу проверить, какой индекс элемента вводится / закрывается при прокрутке. Я хочу знать это, чтобы изменить текст SliverPersistentHeader
. Один из подходов - вычислить scrollOffset и присвоить каждому элементу stati c height. Но это не очень оптимально, поскольку элемент 0 из SilverList
может иметь меньшую высоту, поэтому я могу задать ему фиксированную высоту. Есть ли способ обнаружить элемент, входящий / выходящий из вида внутри SilverList
?