使分页库检索的数据无效的最简单方法是什么? 我需要在注销时这样做。 我有一个DataSource.Factory和一个扩展PageKeyedDataSource的DataSource。在DataSource构造函数上调用invalidate()是一个好主意吗?它会按预期工作吗?
答案 0 :(得分:0)
假设您将分页库与其他架构组件一起使用,例如LiveData
和LifecycleOwner
,并且在注销时屏幕关闭,则DataSource
将自动失效。
如果没有,您仍然可以手动调用
使其无效yourDataSource.invalidate();
失效后,您将无法继续使用DataSource
。但是,适配器的视图不会自动分离,因此,如果要清除它们,则应该从DataSource.Factory
提供一个DataSource
,该视图将不返回任何数据,或者只是清除{{1 }}。