【问题标题】:Tabcontroller throwing error when scrolling up in listview在列表视图中向上滚动时 Tabcontroller 抛出错误
【发布时间】:2020-09-01 23:10:19
【问题描述】:

我的列表视图控制器的滚动控制器通过我在下面创建的函数与我的标签栏链接。但是,当我向上滚动时,控制台会抛出此错误:

'断言失败:第 155 行 pos 12:'value >= 0 && (value

我似乎无法解决错误,当用户达到偏移量 == 0 时,我是否应该禁用滚动控制器?如果是这样,我该怎么做?

  void _scrollListener() {
    var index = (_scrollController.offset / 70).round();
    if (index > choices.length)
      index = choices.length;
      setState(() {
        _tabController.animateTo(index, duration: Duration(milliseconds: 500), curve: Curves.easeIn);
      });
  } 

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    我不是 100% 确定,但我认为默认情况下选项卡索引从 0 开始。 假设我们有 3 个选项卡和 3 个选项。加载任何一个选项卡的正确方法是传递 0 到 2 之间的索引。 如果我们在此示例中使用您的代码,这将导致异常,因为

    index = choices.length;
    

    index 的值为 3,而 _tabController 在该位置上没有项目。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多