【问题标题】:Error in carousel_slider when restart or reload重启或重新加载时 carousel_slider 出错
【发布时间】:2022-11-18 03:18:50
【问题描述】:

我正在使用 carousel_slider 在我的屏幕页面之间切换作为轮播,但是当我单击一个按钮切换到另一个屏幕时,我使用 CarouselController 中的方法 animateToPage 切换到新屏幕 -> controller.animateToPage(pageIndex)

  void handleButtonClick() {
    if (pageIndex != 1 && pageIndex != 2) {
      goToLogin!.call();
    } else {
      controller.animateToPage(pageIndex);
    }
  }

每次我运行该应用程序时,它都能完美运行,但是如果尝试热重启或热重载,单击按钮时会出现以下错误

E/flutter ( 5497): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] 未处理的异常:空检查运算符用于空值 E/flutter(5497):#0 CarouselControllerImpl.animateToPage(包:carousel_slider/carousel_controller.dart:106:41) E/flutter ( 5497): #1 PresentationButton.handleButtonClick ....

有人知道如何解决这个问题吗?

【问题讨论】:

    标签: flutter dart carousel-slider


    【解决方案1】:

    检查 pageIndex 是否为空。

    如果为空,尝试使用非空值初始化,如int pageIndex = 0

    【讨论】:

    • 我使用了 pageIndex = 0,即使错误仍然存​​在。我发现阻止它的唯一方法是将无状态类更改为有状态类
    猜你喜欢
    • 1970-01-01
    • 2014-04-25
    • 2017-04-12
    • 2018-04-26
    • 2016-05-22
    • 1970-01-01
    • 1970-01-01
    • 2011-08-24
    • 2019-09-11
    相关资源
    最近更新 更多