打开聊天Flutter时如何向下滚动聊天列表视图
Posted
技术标签:
【中文标题】打开聊天Flutter时如何向下滚动聊天列表视图【英文标题】:How scroll down chat list view when open the chat Flutter 【发布时间】:2021-05-26 20:18:52 【问题描述】:我想让我的聊天消息在每次打开某人的聊天时向下滚动。我曾尝试使用 jumpTo(),但没有成功。也许有人知道如何使它工作?提前谢谢!
这里是代码 sn-p
Widget ChatMessageList()
return StreamBuilder(
stream: chatMessageStream,
builder: (context, snapshot)
return snapshot.hasData
? ListView.builder(
controller: controller,
itemCount: snapshot.data.docs.length,
itemBuilder: (context, index)
return MessageTile(
snapshot.data.docs[index].data()["message"],
snapshot.data.docs[index].data()["sendBy"] ==
Constants.myName,
);
controller.jumpTo(controller.position.maxScrollExtent);
,
)
: Container();,);
【问题讨论】:
这可能会有所帮助***.com/questions/43485529/… 【参考方案1】:ListView.builder()
有一个名为reverse
的参数。这个默认是false,如果你把它改成true
你可能会达到你想要达到的效果。
ListView.builder(
reverse: true,
);
【讨论】:
谢谢,但以防万一数据需要降序 如果您也想反转您的列表,请致电snapshot.data.docs.reversed
,就像下面发布的@matr0s 一样,但很乐意提供帮助【参考方案2】:
如果您的主要目标是首先获取最新消息,您可以使用 Reverse 获取快照
final messages = snapshot.data.docs.reversed;
希望你明白了
【讨论】:
对不起,我没有完全理解。能不能给个链接例子或者解释一下。 我找不到一个快速准确的例子,但我在我的应用程序中做了类似的事情: * 获取必要的数据并放入单独的变量中:List以上是关于打开聊天Flutter时如何向下滚动聊天列表视图的主要内容,如果未能解决你的问题,请参考以下文章