android - ListAdapter submitList() - 如何滚动到开头

标签 android android-recyclerview listadapter

我的 RecyclerView 和 ListAdapter 有问题。

通过 API,我按从旧到新的升序接收项目。

然后通过调用 submitList(items) 方法刷新我的列表。

但是,由于一切都是异步的,所以在接收到第一个项目后,RecyclerView 仍然停留在接收和显示的第一个项目的位置上。 由于在 ListAdapter 类中,当 submitList() 方法完成时没有回调,我找不到在更新到已添加的新项目之一后滚动的方法。

有没有办法在 ListAdapter 更新时拦截?

最佳答案

Kotlin:执行此操作的方法非常简单。

listAdapter.submitList(yourNewList) { 
    yourRecyclerView.scrollToPosition(0) 
}

关于android - ListAdapter submitList() - 如何滚动到开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53248736/

相关文章:

java - 用户无法访问的目录?

android - Onclick 监听器无法正常工作..?

java - 如何阻止 Android recyclerview 中的搜索过滤器不断崩溃

java - RecyclerView Item 不包裹 ListView 的高度

android - 如何使用带有 Android 的 FirebaseListAdapter 在 ListView 中显示来自 Firebase 数据库的项目的确切数量?

android - 当我尝试在 Android Studio 2 中集成 SDK 时出现 OneSignal 问题

java - 为 android 中的所有 Activity 注册监听器的全局类

android - android 5 上的共享元素 Activity 转换

android - 如何将 "Virtual"/"Shadow"组添加到 SimpleCursorTreeAdapter?

android - 如何在运行时向 ListView 项添加动态 View ?