【问题标题】:Flutter - ScrollController not attached to any scroll viewsFlutter - ScrollController 未附加到任何滚动视图
【发布时间】:2022-01-03 18:47:53
【问题描述】:
ScrollController not attached to any scroll views.
'package:flutter/src/widgets/scroll_controller.dart': 
package:flutter/…/widgets/scroll_controller.dart:1 
Failed assertion: line ** pos **: '_positions.isNotEmpty'

这不是解决此问题的确切方法,而是一种解决方法。我正在尝试构建一个像 Whatsapp 这样的聊天应用程序。如您所知,在您可以查看群组消息或任何聊天的屏幕中,当您进入聊天时,滚动从最底部开始。

为了实现这一点,您可能尝试过像我一样animateTomaxScrollExtent,但它什么也没做,只是在标题中产生了很多错误。如果您只是想在每次进入该屏幕或打开和关闭键盘时从底部开始列表,您所要做的就是在下面的答案中。

【问题讨论】:

    标签: flutter dart scrollview scrollable scrollcontroller


    【解决方案1】:

    使用ListView.builder 的reverse 属性或任何可滚动的小部件来反转列表系统。当您执行此操作时,您获取的列表也将反向显示 - 第一项位于底部,最后一项位于顶部。要解决此问题,请将index 替换为<yourListName>.length - index - 1,如下所示。这将“规范化”反向列表的排序。

    ListView.builder(
      reverse: true,
      itemCount: booList.length,
      itemBuilder: (context, index)
      { 
        return booList[booList.length - index - 1];
      },
    ),
    

    【讨论】:

      猜你喜欢
      • 2019-02-06
      • 2019-07-30
      • 2019-02-17
      • 2019-02-28
      • 2019-10-30
      • 2020-01-27
      • 2021-06-24
      • 1970-01-01
      • 2019-05-18
      相关资源
      最近更新 更多