概述
我想知道当用户滚动得更快时,我怎么能避免回收者视图中的小白色“闪烁”.
当然可以通过在可见屏幕之外预加载更多视图来避免闪烁
我找不到任何可以做到的事情,虽然这一定是一个非常常见的任务?
我在博客上试过这段代码:
public class PreCachingLayoutManager extends LinearLayoutManager {
private static final int DEFAULT_EXTRA_LAYOUT_SPACE = 600;
private int extraLayoutSpace = -1;
private Context context;
public PreCachingLayoutManager(Context context) {
super(context);
this.context = context;
}
public PreCachingLayoutManager(Context context, int extraLayoutSpace) {
super(context);
this.context = context;
this.extraLayoutSpace = extraLayoutSpace;
}
public PreCachingLayoutManager(Context context, int orientation, boolean reverseLayout) {
super(context, orientation, reverseLayout);
this.context = context;
}
public void setExtraLayoutSpace(int extraLayoutSpace) {
this.extraLayoutSpace = extraLayoutSpace;
}
@Override
protected int getExtraLayoutSpace(RecyclerView.State state) {
if (extraLayoutSpace > 0) {
return extraLayoutSpace;
}
return DEFAULT_EXTRA_LAYOUT_SPACE;
}
}
然后我使用setLayoutManager()将LayoutManager分配给构造函数中的自定义Recyclerview
它是“自定义”,但我只想在构造函数中设置LayoutManager,这就是为什么我覆盖了RecyclerView
不幸的是,这没有任何影响
最后
以上就是温柔猎豹为你收集整理的android 加载视图资源,Android Recyclerview预加载视图的全部内容,希望文章能够帮你解决android 加载视图资源,Android Recyclerview预加载视图所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复