В моем приложении есть несколько виджетов AutoCompleteTextView, которые используют ArrayAdapter.
private List<String> adapterList = new ArrayList<String>();
ArrayAdapter<String> dropdownAdapter;
dropdownAdapter = new ArrayAdapter<>(getContext(), R.layout.simple_dropdown_item, adapterList);
autoCompleteTextView.setAdapter(dropdownAdapter);
Работает прекрасно. Когда я набираю текст в представлении, в раскрывающемся списке появляются слова, начинающиеся со слов.
Я хочу сделать это с другим AutoCompleteTextView, но на этот раз с использованием SimpleCursorAdapter.
nameSearchCursor = dbHelper.getChecklistTabDataByChecklistId(outingId, checklistId, nameColumn);
NameSearch = root.findViewById(R.id.SearchNames);
String[] nsColumns = new String[]{nameColumn};
int[] nsTo = new int[]{R.id.simpleDropdownItem};
nameSearchCursorAdapter = new SimpleCursorAdapter(getContext(), R.layout.simple_dropdown_item,
nameSearchCursor, nsColumns, nsTo, 0);
NameSearch.setAdapter(nameSearchCursorAdapter);
Если я начну печатать в этом новом представлении, появится раскрывающийся список, в котором будет показан весь список, и при вводе ничего не изменится. Фильтрация не происходит. Что мне нужно сделать по-другому (и, возможно, почему), чтобы получить CursorAdapter для работы с этим представлением, которое мне не нужно было делать при использовании ArrayAdapter. Я искал этот сайт и читал Документы для разработчиков, и должно быть что-то, чего я просто не понимаю. Пожалуйста, просветите меня.