Как изменить цвет/фон элемента в recyclerview при нажатии?

Пробовал несколько вариантов, например но при клике кнопка мигает и возвращается к первоначальному состоянию. Как это можно исправить?


Ответы (1 шт):

Автор решения: Adm123

Введите в объект, представляющий элемент recyclerView, поле, отвечающее за цвет. И меняйте его при клике. Например - был элемент

public class Element {
private long id;
private String name;
//setters, getters
}

а стал

public class Element {
private long id;
private String name;
private int color;
//setters, getters
}

теперь по событию клика

  1. перекрашиваем итем
  2. сохраняем цвет в поле color

и при биндинге viewHolder-а в адаптере устанавливаем цвет, хранящийся в поле color

→ Ссылка