如何在 RecyclerView 中隐藏视图

How to hide view in RecyclerView

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

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

它最初工作正常,我的 View 消失了,但是当我向后滚动时,一些 View 也消失了,我不知道如何解决这个问题,我尝试了 holder.getAdapterposition 但仍然发生同样的事情。如果有人能帮助我,将不胜感激。

每次你想在 onBindViewHolder 中使用 if 语句时,总是把 else 和它放在一起 。 RecyclerView 重用视图,因此它应该知道特定行是否有任何特殊之处以及普通行的普通格式。

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