AutoCompleteTextView, ArrayAdapter и notifyDataSetChanged () - PullRequest
0 голосов
/ 13 января 2011

Я использую AutoCompleteTextView с ArrayAdapter, который работает как положено.

Проблема в том, что мне нужно изменить массив с значениями Autocomplete-Values.Вызов notifyDataSetChanged () не помогает.Изменения не отображаются.

Знаете ли вы что-нибудь, чтобы обойти эту проблему?

Ответы [ 2 ]

2 голосов
/ 10 января 2012

Вам нужно добавить больше деталей к вопросу, но, основываясь на предположении о вашей проблеме, я бы сказал, что в реализации есть какая-то проблема.notifyDataSetChanged() информирует представление о перезагрузке данных.Если методы настройки данных в ArrayAdapter ссылаются на неизмененный объект данных, notifyDataSetChanged() не будет иметь эффекта.

У реализации пользовательского адаптера, расширяющей ArrayAdapter, обычно будет внутренняя структура данных, которая является источником данных дляадаптер и который будет содержать требуемые значения автозаполнения.

1 голос
/ 26 августа 2016

Не изменяйте ArrayList и не вызывайте notifyDataSetChanged(), так как это не повлияет на ArrayAdapters (реализация кажется нарушенной).

Используйте clear(), add(), insert() и remove() непосредственно на вашем ArrayAdapter вместо этих методов на ArrayList.

...