如何在 Flutter 中的 Carousel Slider 结束时触发功能?

How to trigger function on end of Carousel Slider in Flutter?

我在我的应用程序中使用 carousel_slider 包向我的用户显示 post。 我想在用户到达轮播中的最后一个 post 时加载更多 post。 我在哪里可以触发将更多数据添加到项目列表的功能,以防万一

homeData

我的代码是这样的:

@override
Widget build(BuildContext context) {
  return RefreshIndicator(
    onRefresh: getMoreData, //fetches new post on refresh
    child: CarouselSlider(
      options: CarouselOptions(
        height: 650,
        enableInfiniteScroll: false,
        aspectRatio: 2.0,
        enlargeCenterPage: true,
        scrollDirection: Axis.vertical,
      ),
      items: homeData, //list of widgets that are displayed in the carousel
    ),
  );
}

你可以给onPageChanged一个回调,只要post被滑动就会被调用。

以下是您的操作方法:

List itemList = [1,2,3,4,5];


CarouselSlider(
      options: CarouselOptions( 
        height: 400.0,
        onPageChanged: (index, reason) {
          if(index == itemList.length - 1) {
            //do whatever you want to do on your last page change
          }
        },
      ),
      items: itemList.map((i) {
        return Builder(
          builder: (BuildContext context) {
            return Container(
              width: MediaQuery.of(context).size.width,
              margin: EdgeInsets.symmetric(horizontal: 5.0),
              decoration: BoxDecoration(
                color: Colors.amber
              ),
              child: Text('text $i', style: TextStyle(fontSize: 16.0),)
            );
          },
        );
      }).toList(),
    )