Таймер обратного отсчета Android в recyclerview
Я вставляю обратный отсчет времени внутри ReclyerView, показывая значение внутри textview. Обратный отсчет времени отлично работает, когда запускает мою активность
Моя проблема заключается в том, что когда я прокручиваю ReclyerView и возвращаюсь к предыдущим элементам ،таймер не работает должным образом и отображает неправильные цифры
Что я уже пробовал:
if (mListDiscountTab.get(holder.getAdapterPosition()).getmCountDownTimer() == null) { mListDiscountTab.get(holder.getAdapterPosition()).setmCountDownTimer(new CountDownTimer((((mListDiscountTab.get(holder.getAdapterPosition()).getHour() * 60 * 60) + (mListDiscountTab.get(holder.getAdapterPosition()).getMinute() * 60) + (mListDiscountTab.get(holder.getAdapterPosition()).getSecond())) * 1000), 1000) { @Override public void onTick(long millisUntilFinished) { Log.d("herePOU", holder.getAdapterPosition()+""); long sec = (millisUntilFinished / 1000); ((ViewHolderItem) holder).tv_item_timer_hour_home_discount.setText(NumberConverter.Number_English_to_Persian(sec / 3600)); ((ViewHolderItem) holder).tv_item_timer_minute_home_discount.setText(NumberConverter.Number_English_to_Persian(((sec % 3600) / 60))); ((ViewHolderItem) holder).tv_item_timer_second_home_discount.setText(NumberConverter.Number_English_to_Persian((sec % 3600) % 60)); } @Override public void onFinish() { mListDiscountTab.remove(holder.getAdapterPosition()); notifyItemRemoved(holder.getAdapterPosition()); } }); mListDiscountTab.get(holder.getAdapterPosition()).getmCountDownTimer().start(); }