RecyclerView scrollToPosition()-使用屏幕底部边缘作为参考点(而不是屏幕顶部边缘)

时间:2018-08-15 09:49:21

标签: android android-recyclerview

我正在使用RecyclerView加载一些消息。调用scrollToPosition(messagesList.size() - 1)时,视图始终加载到列表的末尾。

我的问题:我想向滚动位置添加偏移量,以使新消息不会立即显示,但用户必须向下滚动。 这意味着如果我有3条新消息,我想从底部 偏移3条消息。

scrollToPosition()方法似乎使用视图的顶部作为参考点。有没有一种方法可以加载列表项,该列表项的项目与botton有偏移?

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

  

scrollToPosition()方法似乎将视图的顶部用作   参照点。有没有一种方法来加载具有项目偏移量的列表项目   来自波顿吗?

通过设置RecyclerView创建聊天消息列表屏幕的最佳方法 reverseLayout = true使消息列表从底部显示。

recyclerview.setLayoutManager(new LinearLayoutManager(getContext(), LinearLayoutManager.VERTICAL, true));

在收到新消息时,您无需调用scrollToPosition(messagesList.size() - 1)即可滚动到底部。现在,使用reverseLayout = true滚动到顶部时,就像滚动底部一样。