我正在使用 Android ArchPagedListAdapter
类。我遇到的问题是,由于我的应用程序是聊天风格的应用程序,因此在插入项目时我需要滚动到位置 0。但是 PagedListAdapter 找到差异并在后台线程上调用必要的方法,所以似乎没有可靠的方法来调用layoutManager.scrollToPosition(0)
如果有人对我如何在正确的时间滚动有任何想法,将不胜感激。谢谢!
这是我的房间道:
@Dao
abstract class MessagesDao {
@Query("SELECT ...")
abstract fun getConversation(threadId: String): DataSource.Factory<Int, Conversation>
}
然后是 LivePagedListBuilder:
LivePagedListBuilder(database.messagesDao.getConversation(threadId), PagedList.Config.Builder()
.setInitialLoadSizeHint(20)
.setPageSize(12)
.setEnablePlaceholders(true)
.build()).build()