Android обновляет индикатор выполнения, который устанавливается внутри пользовательского ArrayAdapter - PullRequest
2 голосов
/ 26 февраля 2010

Привет, у меня проблема с обновлением индикатора выполнения.

Сначала у меня есть специальный адаптер, в котором я создаю строку для каждого элемента с текстовым обзором и индикатором выполнения. (у меня есть item_row.xml, в котором я определяю макет для каждой строки)

public View getView(int position, View convertView, ViewGroup parent) { 
.....
     ProgressBar progressHorizontal = (ProgressBar)tripListItemView.findViewById(R.id.downloadprogress);
        if (offline) {
            progressHorizontal.setVisibility(View.VISIBLE);
            progressHorizontal.setProgress(t.getDownloaded());
        } else
            progressHorizontal.setVisibility(View.INVISIBLE);

        TextView itemName  =(TextView)tripListItemView.findViewById(R.id.tripsname);

Хорошо, теперь у меня есть служба загрузки фоновых данных из внешнего API, и я хочу, когда обновлять индикатор выполнения каждую секунду с ходом загрузки.

Для этого у меня есть задание таймера, выполненное с помощью обработчика ( ссылка )

но проблема в том, как мне снова получить доступ к индикаторам выполнения, созданным в моем адаптере, чтобы обновить прогресс?

Спасибо

1 Ответ

1 голос
/ 27 февраля 2010

Это должно быть легко;)

ProgressBar pb = (ProgressBar)((View)list.getChildAt(i)).findViewById(R.id. downloadprogress);
...