Flutter swiper在tab切换之后快速循环

2022-06-10 14:11:55 浏览数 (1)

我的swiper在首页,在BottomNavigationBar点击切换回来之后,首页的swiper就会快速的循环,然后过一会正常。

很明显,要么是数据的问题,要么是swiper配置的问题。

处理数据代价太大,原则上也不太合理,那只能从配置下手。

代码语言:javascript复制
  SwiperController _swiperController;

  @override
  void initState() {
    super.initState();

    _scrollController = ScrollController()..addListener(() {});
     _swiperController = new SwiperController();
    _swiperController.startAutoplay();
  }

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      body: Column(
        children: <Widget>[
          Container(
            child: Swiper(
              ......
              loop: false,
              autoplay: false,
              controller: _swiperController,
              ......
            ),
          ),
        ],
      ),
    );
  }

  @override
  void dispose() {
    _swiperController.stopAutoplay();
    _swiperController.dispose();
    super.dispose();
  }
autoplay 设置为false,loop 也设置为false,用swiperController在生命周期里控制自动播放就行,不影响效果的

0 人点赞