场景:最近做的客服系统,进入页面直达最底部,发送消息或者接收到他人消息后,消息列表都会自动滑动到底部,不需要我们手动滑动,这样的用户体验好
实现:
用ListView
布局,然后reverse
反转
ListView.builder(
reverse: true, //翻转
shrinkWrap: true,
physics:PageScrollPhysics(parent: ClampingScrollPhysics()),
controller: _scrollController,
itemCount: messageList.length,
itemBuilder: (context, index) {
Column(
children: []
)
}
因为listview翻转了,所以储存聊天信息的数组也要翻转
//数组翻转
list.reversed
滑到底部:
ListView使用ScrollController来控制滑动,其中有jumpTo
、animateTo
2个方法滑动到指定的位置
因为我们对listView进行了翻转,所以顶部就是底部
ScrollController _scrollController = ScrollController();
// 自动滑到底部
autoSlide() {
// 滑动到顶部
//