Есть ли способ вызвать notifyDataSetChanged () из основного действия для пользовательского адаптера элемента внутри другого пользовательского адаптера? - PullRequest
0 голосов
/ 21 января 2011

Я пытаюсь решить эту проблему, но пока не могу понять. У меня в макете есть список с его собственным адаптером. Внутри каждого представления у меня есть много объектов, хранящихся в статическом классе с именем ViewHolder. Одна - галерея с другим настраиваемым адаптером.

Моя проблема в том, что после того, как я получил onActivityResult для моей активности. Мне нужно отправить notifyDataSetChanged () в мой адаптер галереи. Если я сделаю:

((BaseAdapter) list.getAdapter ()) notifyDataSetChanged ().

Обновляются все элементы внутри адаптера, кроме тех, которые имеют собственный настраиваемый адаптер.

Теперь я подумал, может быть, я подумал, что, возможно, есть способ переопределить onNotifyDataSetChanged () или что-то в этом роде, чтобы отправить уведомление из моего ListAdapter, как только я уведомлю его. Но я не смог найти что-то подобное, есть ли способ сделать это?

Я также заметил, что если я попытаюсь сделать:

((BaseAdapter) ListAdapter.ViewHolder.this.gallery.getAdapter ()) notifyDataSetChanged ();.

Это говорит: «Нет включающего экземпляра ListAdapter.ViewHolder доступен в области». Есть ли способ сделать его доступным?

Или другой способ добиться того, что я пытаюсь сделать?

Заранее спасибо

1 Ответ

0 голосов
/ 21 января 2011

Мне стыдно ... Казалось, я забыл обновить несколько переменных, чтобы он работал правильно ...

Таким образом, вывод заключается в том, что адаптер внутри адаптера обновляется, если вы звоните:

.notifyDataSetChanged ();

Вы просто должны сделать это правильно

...