Фильтр отображения текста в SearchView не удаляется
Прилагается скриншот реализации представления поиска с успешно работающей активностью listview. Но, на любом текстовом поиске в представлении поиска он показывает результат с сероватым тостом, как функция отображения того, что пользователь ввел для фильтрации списка. Как удалить его, если он блокирует отображение списка в фоновом режиме?
1 ответ:
Вы должны поместить свой адаптер в отдельный фильтр. Код выглядит примерно так.
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, stringlist); listView.setAdapter(adapter); listView.setTextFilterEnabled(true); Filter filter = adapter.getFilter();
И при прослушивании текстового запроса, если ваш код выглядит примерно так
@Override public boolean onQueryTextChange(String newText) { if (TextUtils.isEmpty(newText)) { listView.clearTextFilter(); } else { listView.setFilterText(newText.toString()); } return true; }
Просто измените его на этот
@Override public boolean onQueryTextChange(String newText) { if (TextUtils.isEmpty(newText)) { filter.filter(null); } else { filter.filter(newText); } return true; }