如何在RecyclerView中隐藏视图

时间:2016-12-03 13:32:39

标签: android android-studio android-recyclerview android-viewholder

我想在RecyclerView的项目中隐藏View。 我在BindViewHolder中有if/else语句,如下所示:

if (position == list.size() - 1)
{
   holder.divider.setVisibility(View.Gone)
}

它最初工作,我的视图消失但当我向后滚动时,一些视图也消失了,我不知道要解决这个问题,我试过holder.getAdapterposition但仍然发生了同样的情况。如果有人可以帮助我,我将非常感激。

1 个答案:

答案 0 :(得分:5)

每当您想在if内使用onBindViewHolder语句时,始终将其他语句。 RecyclerView重用视图,因此它应该知道特定行的特殊情况以及普通行的正常格式。

if (position == list.size() - 1){
   holder.divider.setVisibility(View.GONE);
}else{
   holder.divider.setVisibility(View.VISIBLE);
}