#java #android #arraylist
Создал на форме AutoCompleteTextView и передаю в него ArrayList, состоящий из элементов,
созданного класса Person:
class Person {
private String Name;
public String getName() {
return Name;
}
public void setName(String firstName) {
this.Name = firstName;
}
}
ArrayList не пустой, элементы в нем есть, проверял.
AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.autocomplete_message);
ArrayAdapter adapter = new ArrayAdapter(this, R.layout.support_simple_spinner_dropdown_item,
list);
textView.setAdapter(adapter);
Ошибок в коде нет, но во время тестирования и ввода текста, виджет не работает. Как
сделать так, чтобы при наборе, виджет выдавал мне список элементов из ArrayList, соответствующих
введенному тексту? (в классе только одно поле, по нему поиск и идет)
Ответы
Ответ 1
Реализуйте метод toString() в своем классе-модели: class Person { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return name; } } либо реализуйте собственный адаптер на основе стандартного, если требуется более сложный вывод. PS: имена переменных и экземпляров классов в Java принято писать с маленькой буквы в lowerCamelCase-стиле. С Большой буквы пишутся имена классов
Комментариев нет:
Отправить комментарий