I want my RecyclerView to scroll to the bottom when a new item is added to the list. Below is my code:
RecyclerView.LayoutManager layoutManager = new LinearL
adapter.registerAdapterDataObserver(object : RecyclerView.AdapterDataObserver() {
override fun onItemRangeInserted(positionStart: Int, itemCount: Int) {
super.onItemRangeInserted(positionStart, itemCount)
val msgCount = adapter.getItemCount()
val lastVisiblePosition =
linearLayoutManager.findLastCompletelyVisibleItemPosition()
if (lastVisiblePosition == -1 || positionStart >= msgCount - 1 &&
lastVisiblePosition == positionStart - 1) {
recyclerView.scrollToPosition(positionStart)
} else {
recyclerView.scrollToPosition(adapter.getItemCount() - 1);
}
}
})