Как получить данные из определенных строк только в RecyclerView?
Я застрял на небольшой проблеме.
Когда я нажимаю на строку в моем RecyclerView, я хотел бы изменить ее цвет на какой-то другой цвет (например, красный).
Затем, если я снова нажму на эту строку, я бы хотел вернуть ее цвет к нормальному (то есть: белый).
Затем, если я нажму на второй ряд или n-й ряд, я хотел бы сделать то же самое.
Я пытался работать с классом RecyclerView Adapter, в своем ViewHolder я пробовал некоторые идеи подсчета кликов пользователей, установки логического значения для проверки цветных строк и getAdapterPosition, чтобы узнать, какова позиция строки... но на самом деле все мои попытки потерпели неудачу!
Не могли бы вы помочь мне с этой проблемой?
Кажется, я близок к решению, но нужна небольшая помощь
1 ответ
Вам нужно будет отслеживать, какие элементы были выбраны в списке (в противном случае любые изменения в представлении будут просто переработаны).
Держите список выбранных элементов в вашем адаптере. В onBindViewHolder адаптера вы можете проверить по списку, и если список содержит вид / элемент, вы можете соответствующим образом раскрасить вид.
Редактировать: см. Здесь рабочий пример. Как правильно выделить выбранный элемент в RecyclerView?