RecyclerView BackgroundColor

Eu usei umRecyclerView para exibir alguns dados de texto. Eu tenho a lógica para selecionar cartões diferentes.

Gostaria de mudar a aparência dos cartões selecionados.

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);
    }

Se eu usar meu código assim, ele funcionará. Meu evento onClick aciona esse código e a cor de fundo do meu cartão muda para verde.

Então, aqui está o meu problema: a rolagem para baixo mostra outros cartões na mesma posição relativa (mas mais abaixo na lista) com a mesma cor de fundo, mesmo que não estejam selecionados; selecionar o primeiro cartão e rolar para baixo até onde o oitavo cartão é o cartão visível superior mostra o oitavo cartão realçado.

questionAnswers(1)

yourAnswerToTheQuestion