小编Fil*_*Jac的帖子

RecyclerView BackgroundColor

我用a RecyclerView来显示一些文本数据.我在其中选择了不同的卡片.

我想改变所选卡片的外观.

public void toggleSelection(int pos)
    {
        RecyclerView.ViewHolder viewHolder = recView.findViewHolderForPosition(pos);
        if (selectedItems.get(pos, false)) {
            selectedItems.delete(pos);
            viewHolder.itemView.setBackgroundColor(Color.WHITE);
        }
        else {
            selectedItems.put(pos, true);
            viewHolder.itemView.setBackgroundColor(Color.GREEN);
        }
        notifyItemChanged(pos);
    }
Run Code Online (Sandbox Code Playgroud)

如果我像这样使用我的代码它是有效的.我的onClick事件触发此代码,我的卡背景颜色变为绿色.

所以这是我的问题:向下滚动显示其他卡片在相同的相对位置(但在列表中更下方),即使没有被选中,也会使用相同的背景颜色; 选择第一张卡并向下滚动到第八张卡是顶部可见卡的位置,显示第八张卡突出显示.

android colors android-recyclerview

3
推荐指数
1
解决办法
6618
查看次数

标签 统计

android ×1

android-recyclerview ×1

colors ×1