【发布时间】:2018-01-30 11:00:56
【问题描述】:
我正在使用 alpha5 中的分页库。 我的问题是,我想使用 android 分页库加载的列表经常被更改。就像每分钟多次一样。当我向下滚动并加载第 1、2、3 页(atm 我为此使用 PositionalDataSource)时,可能会发生第一页在向下滚动时无效。
尝试想象第 1 页由于某种原因无效,并且用户在第 5 页(与第 1 页不在同一屏幕上),现在他再次向上滚动到第 1 页。分页库正在从缓存中获取数据,所以有旧数据,这很糟糕。
有没有办法使页面无效? 我希望当我向上滚动时,会有一个(可选的)调用(可能在 DataSource 本身中)询问来自缓存的数据是否仍然有效。
如果是这样,一切都很好,如果不是,请使用方法重新加载您的源(数据库、网络等)
【问题讨论】:
-
如果你的
DataSource发生变化,唯一通知外界的方法就是调用DataSource#invalidate()方法 -
我不想重新加载整个列表,而是“旧”页面。
-
您不能这样做,请参阅
DataSourcejavadocs,部分:Updating Paged Data -
您好@andre,您成功使用 PositionalDataSource 了吗?在我的示例中,它在初始加载后停止...
-
除了缺少的功能,它按预期工作,是的
标签: android android-architecture-components android-paging