android - recyclerview显示错乱
本文介绍了android - recyclerview显示错乱的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
滑动的时候,不该显示的item也显示了标注(就是那个数字1)
@Override
public void onBindChildViewHolder(MyChildViewHolder holder, int groupPosition, int
childPosition, int viewType) {
//...
if (studentBean.getGalleryCount() != 0) {
holder.childAlbumNum.setText(" " + studentBean.getGalleryCount() + "' ");
} else {
holder.childAlbumNum.setVisibility(View.GONE);
}
//...
}
解决方案
RecyclerView
是用于重用的,也就是说你的每一个条目,使用的有可能是前面已经使用过的布局对象。所以你在onBindChildViewHolder
里应该对某些View
的显示与否做一下初始化设定。
你的代码里,我看到了你仅仅在某种情况下隐藏了一个View
,但是却没有初始化它的显示与否,这样可能由于上一次显示时是GONE
的,这一次你设置的数据,但是因为没有设置VISIBLE
,所以就导致显示不出来了。
你的问题应该就是这个,建议你在onBindChildViewHolder
的开始部分加入:
holder.childAlbumNum.setVisibility(View.VISIBLE);
这篇关于android - recyclerview显示错乱的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文