Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
lord_commander
0 / 0 / 0
Регистрация: 20.05.2014
Сообщений: 137
#1

Не работает AutoCompleteTextView для ArrayList собственного класса - Программирование Android

10.04.2016, 18:01. Просмотров 200. Ответов 3
Метки нет (Все метки)

Добрый день. Я создал на форме AutoCompleteTextView и передаю в него ArrayList, состоящий из элементов, созданного класса Person:

Кликните здесь для просмотра всего текста
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Person {
 
    private String name;
 
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    @Override
    public String toString() {
      return name;
    }
}


ArrayList не пустой, элементы в нем есть, проверял.

Кликните здесь для просмотра всего текста
Javascript
1
2
3
AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.autocomplete_message);
ArrayAdapter<Person> adapter = new ArrayAdapter<Person>(this, R.layout.support_simple_spinner_dropdown_item, list);
 textView.setAdapter(adapter);


Ошибок в коде нет, но во время тестирования и ввода текста, виджет не работает - выпадающий список не выпадает. Как сделать так, чтобы при наборе, виджет выдавал мне список элементов из ArrayList, соответствующих введенному тексту? (в классе только одно поле, по нему поиск и идет).

P.S. имеется аналогичный виджет, который получает данные из созданного и заполненного программно массива типа String - все работает нормально, а здесь нет
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2016, 18:01     Не работает AutoCompleteTextView для ArrayList собственного класса
Посмотрите здесь:
Не корректно работает AutoCompleteTextView Android
Android ArrayList из обьектов класса
Android Передать через intent ArrayList объектов своего класса
Android Как поместить в preferences arrayList типа: arraylist<Class>
Android AutoCompleteTextView
Android Autocompletetextview и сквозной поиск
Android AutoCompleteTextView убрать фокус
Android AutoCompleteTextView + база sqlite
Android Как подгрузить данные в AutoCompleteTextView?
Android Ограничить число подсказок AutoCompleteTextView
Автозаполнение AutoCompleteTextView. Что такое groceryDb? Android
Android Как узнать что выбрал пользователь в AutoCompleteTextView

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fraley
105 / 105 / 38
Регистрация: 24.05.2015
Сообщений: 315
11.04.2016, 00:48     Не работает AutoCompleteTextView для ArrayList собственного класса #2
Насколько я понимаю вы используете дефолтный layout?
Если да, то перед R надо добавлять android.
То есть вот так android.R.layout.support_simple_spinner_dropdown_item
lord_commander
0 / 0 / 0
Регистрация: 20.05.2014
Сообщений: 137
11.04.2016, 10:50  [ТС]     Не работает AutoCompleteTextView для ArrayList собственного класса #3
Да, дефолтный.
Написав так
Javascript
1
android.R.layout.support_simple_spinner_dropdown_item
, строка
Javascript
1
support_simple_spinner_dropdown_item
выделяется красным, как ошибка и пишет 'Cannot resolve simbol'.

Повторю, что указанная выше конструкция отлично работает массивом строк
Javascript
1
String[] data = {"one", "two", "three", "four", "five"};
, а с массивом объектов не работает
fraley
105 / 105 / 38
Регистрация: 24.05.2015
Сообщений: 315
11.04.2016, 16:17     Не работает AutoCompleteTextView для ArrayList собственного класса #4
lord_commander, ну так используйте те которые есть по дефолту.
Посмотрел что есть... можно использовать - android.R.layout.simple_dropdown_item_1line
Так же есть похожий на тот что вы используете - android.R.layout.simple_spinner_dropdown_item

Добавлено через 35 минут
Да, и по поводу работы с объектами в том виде как у вас - надо добавить конструктор в класс Person:

Java
1
2
public Person(String name){
        setName(name);
Yandex
Объявления
11.04.2016, 16:17     Не работает AutoCompleteTextView для ArrayList собственного класса
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru