Как использовать BroadcastReciever в качестве триггера для изменения значения отдельного TextView блока RecyclerView?
@Override
public void onBindViewHolder(RAdapter.ViewHolder viewHolder, int i) {
viewHolder.name_tv.setText(name_List.get(i));
viewHolder.adress_tv.setText(adress_List.get(i));
viewHolder.data_tv.setText(last_date.get(i));
holder.btn_start.setOnClickListener(() -> {
holder.name_tv.setText("Hello);
})
}
Использую такую конструкцию для замены значения TextView в отдельном элементе RecyclerView и это работает по нажатию Button, но при попытке использования BroadcastReciever'a в качестве триггера происходит замена текста во всех блоках RecyclerView, вместо конкретного. Подскажите, как можно решить?
Ответы (1 шт):
Автор решения: Jonathan
→ Ссылка
public void onBindViewHolder(final RAdapter.ViewHolder viewHolder, final int i) {
br = new BroadcastReceiver() {
// действия при получении сообщений
public void onReceive(Context context, Intent intent) {
// обновление TextView
String newValue = "New Data";
int updateIndex = 0; //номер блока RecycleView
name_List.set(updateIndex, newValue);
notifyItemChanged(updateIndex);
}
};
}