【发布时间】:2021-02-06 06:58:21
【问题描述】:
我为聊天应用程序创建了一个设计,并尝试自动滚动到结束,我使用了这段代码
scrollController.animateTo(
scrollController.position.maxScrollExtent,
curve: Curves.easeOut,
duration: const Duration(milliseconds: 500),
);
什么也没发生,ofc 列表应用了控制器
child: ListView.builder(
padding: EdgeInsets.symmetric(vertical: 10),
shrinkWrap: true,
controller: scrollController,
itemCount: chatMessage.length,
itemBuilder: (context, index) {
return ChatBubble(
chatMessage: chatMessage[index],
isDark: widget._isDark,
);
},
)
我尝试打印 maxScrollExtent 以查看是否有问题。 最大和最小滚动范围都等于 0.0。 animateTo 函数也在 postFrameCallback 中调用。 listview 长度始终为 20,目前它是一个简单的列表。
【问题讨论】:
-
不起作用,最大值和最小值仍然为0.0,没有任何反应
-
还是一样,我试了一两秒
-
是的,是
true -
所以您的列表视图位于其他一些可滚动的小部件中,对吧?很可能这就是为什么你的 maxScrollExtent 永远不会被分配的原因
-
@pskink 我的列表视图在列内,但我仍然得到最大值和最小值 0.0?你能帮帮我吗?
标签: flutter dart flutter-layout