Вопрос

Вот мой сценарий: у меня есть база данных, где мне интересны 2 столбца. Теперь я создал AutoCompletetExtView, где адаптер GEHTS через SQL записи одного столбца.

Пока что ... так хорошо, но я на самом деле хочу, чтобы, если пользователь набирает sth. В автозаполняющем поле я замечаю это и получаю текст. Через SQL я сейчас хочу получить Everey столбец 2 где значение столбца 1 содержится в введенном тексте. И этот список должен отображаться в адаптере. Другими словами, я сам фильтровал данные через SQL, но я хочу, чтобы они были показаны в адаптере.Проблема в, что адаптер показывает только записи, которые начинаются с текста в автозаполнении, но я хочу показать адаптер в любое время, как уже Саид: я сам фильтрую данные, я просто хочу, чтобы адаптер отображался. Какой -нибудь ideo, как это решить? AutoCompletEteTextView правильным элементом для использования?

Я также думал об использовании простого прядильщика ... но при использовании спиннера есть 2 основные проблемы. Сначала я должен был сделать его редактируемым. И во -вторых, мне понадобился бы выпадающий список вместо «всплывающего окна». ...

Другая моя идея решить эту проблему - написать собственный фильтр для поля автозаполнения ... но я никогда не сбивался с этим, и я также не мог найти никаких примеров в Интернете для этого.

Спасибо за вашу помощь

Это было полезно?

Решение

Я изменил метод Spinner ArrayAdapter и получил свой собственный прядильщик. Просто измените параметр этого метода, как

 Spinner spinner = (Spinner) findViewById(R.id.Spinner01);
 ArrayAdapter<CharSequence>   adapter=ArrayAdapter.createFromResource(This,R.array.statename,R.layout.mylayout);
 spinner.setAdapter(adp);

В котором содержит файл mylayout

<EditText 
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:id="@+id/spinnerTarget"
 android:textColor="#FF8B1500"
 android:gravity="center"
>

Другие советы

Вы можете использовать AutoCompletetExtView и установить его адаптер для ваших значений из SQLite или из строкового массива, как показано ниже:

String values[]= {"Orange","Apple","Pineapple"};
AutoCompleteTextView text=(AutoCompleteTextView)findViewById(R.id.a1);
text.setAdapter(new ArrayAdapter<String>    
    (this,android.R.layout.simple_dropdown_item_1line,values));

Для получения дополнительной информации об этом перейти к Сайт разработчиков

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top