如果我们使用DiffUtil.Callback,并做
adapter.setItems(itemList);
diff.dispatchUpdatesTo(adapter);
Run Code Online (Sandbox Code Playgroud)
我们如何确保添加新元素将滚动到新的位置.
我有一个案例,我看到项目消失,并在顶部创建一个新的第一个元素,但不可见.它会隐藏在顶部,直到您向下滚动以使其可见.在使用之前DiffUtil,我是手动实现的,在我知道我插入某个位置(在顶部)后,我可以滚动到.
在页面上: onCreate每次选择一个选项卡时都会调用两个选项卡
有人解释了ABS(实际上是ViewPager)是如何工作的,以便ViewPager能够进行滚动.很明显,至少上一页/下一页需要同时创建所有页面.
是否有可能以某种方式"缓存"不仅仅是上一个/下一个视图(片段):
我在第1页,在那里我有一个网络调用来获取一些数据(在Activity中执行此操作,而不是在Fragment中 - 顺便说一下.这样可以吗?)
切换到第2页,然后
切换到第3页,然后
切换到第1页=这里我的页面被重新创建(虽然使用了一些缓存,但是,如果可能,我不需要任何重新创建)
因此,缓存所有页面会很好.如何实现这一点如果可能在当前版本(4)中,或者这将是一些新功能?
或者甚至更好的问题,如何推迟/禁用销毁视图?