Android分页库java.lang.IllegalArgumentException:需要MainThreadExecutor
我正在使用Android分页库Android分页库java.lang.IllegalArgumentException:需要MainThreadExecutor,android,kotlin,pagedlist,android-paging,Android,Kotlin,Pagedlist,Android Paging,我正在使用Android分页库androidx.paging:paging runtime:2.0.0构建一个列表。问题是,当我想构建PagedList(LivePagedList工作正常)时,我有一个错误: java.lang.IllegalArgumentException: MainThreadExecutor required at androidx.paging.PagedList$Builder.build(PagedList.java:355) 但是我没有看到可用的setMain
androidx.paging:paging runtime:2.0.0
构建一个列表。问题是,当我想构建PagedList
(LivePagedList
工作正常)时,我有一个错误:
java.lang.IllegalArgumentException: MainThreadExecutor required
at androidx.paging.PagedList$Builder.build(PagedList.java:355)
但是我没有看到可用的setMainThreadExecutor
方法,只有setFetchExecutor
:
val result = list.filter { it.desc?.contains(query, ignoreCase = true) == true }
val dataSource = MyDataSource(result)
val mainHandler = Handler(Looper.getMainLooper())
val pagedList: PagedList<MyDetails> = PagedList.Builder<Int, MyDetails>(dataSource, 500).setFetchExecutor { mainHandler.post(it) }
.build()
val result=list.filter{it.desc?.contains(query,ignoreCase=true)==true}
val dataSource=MyDataSource(结果)
val mainHandler=Handler(Looper.getMainLooper())
val pagedList:pagedList=pagedList.Builder(数据源,500).setFetchExecutor{mainHandler.post(it)}
.build()
谁知道这里出了什么问题?读取源代码时,如果执行器设置为null,则会出现此异常。我看不出你这么叫 我同意例外信息有点误导 作为我使用的源代码参考。这并不完全相同,但我相信androidx版本在这里的行为是相同的