Итак, у меня есть собственный заголовок spinner, где пользователь может изменить название имен на основе выбора. Я хочу сделать это, если они нажимают на счетчик и меняют значение по умолчанию, тогда оно отображает только имена в списке из названия имен. В настоящее время я попробовал это, восстановив свой фрагмент из моего tabhost, и если условия будут выполнены, он просто удалит из списка все, что не имеет того, что выбрано пользователем. Но это неэффективно, и это не сработало, поскольку список не обновлялся, и условие даже не вызывалось при создании нового экземпляра ... Есть ли способ фильтрации, который я могу сделать для этого? Любые идеи или помощь были бы замечательными!Фильтр списка через те же названия Android
ответ
Вам нужно всего лишь обновить ListView
не весь фрагмент. Существует несколько способов сделать это, включая предоставление другого источника данных для адаптера ListView
. Точные данные о том, как это сделать, зависят от того, используете ли вы ArrayAdapter
или CursorAdapter
.
Я использую базовый адаптер для чтения в информации о модели. Дело в том, что все раздельно, так как все его на экране прокрутки tabhost, так что мне нужно будет вспомнить фрагмент для загрузки новых данных? Возможно, я ошибаюсь. Может быть, вы можете привести пример. – codewarrior
@codewarrior Вам не нужно перезагружать весь фрагмент. Вы должны предоставить только новый набор данных в «ListView». –
@codewarrior Вы реализуете свой собственный пользовательский класс, который расширяет «BaseAdapter»? –
Можете ли вы разместить свой код, пожалуйста? Код, который определяет и заполняет Spinner (и любой адаптер), будет полезен. –
Дело в том, что .. если вы читаете, я действительно не ищу этого решения. Я ищу возможный способ фильтрации списка, основанный на изменении текста счетчика. – codewarrior
Хм, да, я куда-то собирался. Удачи. –