Я создаю приложение, которое требует ListView с неопределенным количеством элементов, каждый из которых имеет таймер, который отсчитывает от переменного числа. Я могу успешно сделать один из них обратный отсчет, но я не могу понять, как включить таймер в каждый элемент ListView.
В настоящее время я использую CountDownTimer (убедитесь, что вы используете D для копирования с сайта, они ошибаются).
Приветствуется любой код или источники, указывающие мне в правильном направлении.
Вот мой текущий класс EventAdapter, он устанавливает текст, отображаемый в каждом элементе ListView TextView. То, что мне нужно сделать, - это сделать CountView каждый день. Поскольку каждый элемент ListView отображает что-то другое, я полагаю, мне нужен способ дифференцирования каждого элемента.
Я мог бы просто обновлять весь список каждую секунду, но есть и другие элементы, которые я не включил, например изображения, загруженные из Интернета, что было бы нецелесообразно обновлять каждую секунду.
private class EventAdapter extends ArrayAdapter<Event>
{
private ArrayList<Event> items;
public EventAdapter(Context context, int textViewResourceId, ArrayList<Event> items) {
super(context, textViewResourceId, items);
this.items = items;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.row, null);
}
Event e = items.get(position);
if (e != null) {
TextView tv = (TextView) v.findViewById(R.id.text);
if (tv != null)
tv.setText(e.getName());
}
return v;
}
}