-
Notifications
You must be signed in to change notification settings - Fork 267
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
个人觉得RecyclerView应该添加clear ViewHolder cache #5
Comments
我在里面调用的是缓存视图的recycler的clear方法,晚点尝试一下。你这里的list是什么类型? |
我这里是整了一个recyclerView的子类。
} |
@Zhaoyy 差不多 Colorful里面也调用了clear函数。不过没有getRecycledViewPool().clear();这个。 |
我之前处理的时候发现不加这句会出现部分item theme不刷新的问题。 |
@Zhaoyy 我也是调用了clear方法,如果没有加你那句确实是会出现部分item theme不刷新的问题,多谢分享 |
我用的换肤框架,会有换肤后,调用 notifyDatasetChanged ,发现 有些ViewHoldre 是new的 ,有些viewHolder 是复用的,导致部分item 然后是旧的皮肤, 使用你的clear是不是可以解决 |
@XiuWuZHuo you can have a try |
请教个问题, 请问这是需要加上吗? getRecycledViewPool().clear(); |
@qq137712630 内部 已经有了 getRecycledViewPool().clear(); 请确保你的Item中的各种颜色也是通过 自定义属性来配置的。 |
@hehonghui
|
提问题的兄弟很 细心,我看demo都没注意这个bug |
不同主题的view type 加上不同的offset,切换主题后自动创建新 view |
public void setMaxRecycledViews(int viewType, int max) {
看看这个方法,切换前调用一下 |
我之前也处理过这种类似主题变换的项目,如果不清楚cache,上拉或者下拉刷新的情况下会出现问题。
我的方法当时是:
list.clear();//只是比你的clear多了一个 getRecycledViewPool().clear();;
The text was updated successfully, but these errors were encountered: