2 つの問題があります。ページ ビュー ビルダーを使用して 1 日を構築しています。
child: PageView.builder(
physics: new AlwaysScrollableScrollPhysics(),
itemCount: allDays.length,
controller: _pageController,
itemBuilder: ( context, int index) {
return _listDay(index);
},
),
毎日、API からの時間のリストが含まれています。
void initState() {
_futureTime = getDateDayAPI1.getTimeApi(doctorInfoName, widget.dayName);
super.initState();
_futureTime.then((value){
setState(() {
_snapshotTimes.addAll(value);
});
});
_future.then((data) {
setState(() {
_snapshot.addAll(data);
});
},);
}
Widget build(BuildContext context) {
return FutureBuilder(
future: _futureTime,
builder: (context, AsyncSnapshot snapshot){
if (_futureTime == null){
return Container(
child: Center(child: loadingRing(),),
);
}
else {
return SizedBox(
width: 150,
height: 180,
child: ListView.builder(
itemCount: 6,
itemBuilder: (context, index) {
return index == 0 ? Container() : _listItem(index-1);
},
),
);
}
}
);
}
最初の問題は、ウィジェットがスクロール時にそれ自体を再構築することです。2 つ目は、この画像にエラーが表示されることです RangeError (index): Invalid value: Only valid value is 0: 1