Вопрос по android – Как добавить опцию поиска в Android Spinner?

6

У меня есть длинный список отображения данных в Android Spinner. Итак, я хочу добавить опцию поиска в этот счетчик? Может ли кто-нибудь помочь мне с простым примером кода .. (Я видел некоторые ответы по этому поводу, но их недостаточно) ..

Я новичок в Android, и я знаю, что на самом деле это не правильный путь. но я хочу добавить такую опцию к блесне. Когда вы нажимаете букву в окне поиска, список элементов отображается в счетчике, относящемся к этой букве. Большое спасибо.

публичный поиск по пустым местам (Просмотр)

    cursor = db.rawQuery("SELECT * FROM tblRepTeritories WHERE RepCode like?", 
        new String[]{"%" + searchText.getText().toString() + "%"});


    SimpleCursorAdapter adapter1 = new SimpleCursorAdapter(
            this, 
            android.R.layout.simple_spinner_item, 
            cursor, 
            new String[] {"TeriCode"}, 
            new int[] {android.R.id.text1});

adapter1.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item );
// get reference to our spinner
Spinner s1 = (Spinner) findViewById( R.id.spinner2 );

s1.setAdapter(adapter1);


}
Теперь работает или нет. Praveenkumar
Немного объясни это подробнее .. И, опубликуй свой код, который попробовал сам. Praveenkumar
@SpK это работает. Но на самом деле это не то, чего я хочу. это только дает результат поиска. Но я хочу такого рода вещи. & quot; Когда вы нажимаете на букву в окне поиска, в счетчике появляется всплывающее окно, и в нем отображается список элементов, относящихся к этой букве & quot ;. Благодарю. Akz Li
@SpK код, который я попробовал, выше .. спасибо Akz Li
Возможно, вам стоит взглянуть на AutoCompleteTextView, который может соответствовать вашим потребностям. Проверять, выписыватьсяthis tutorial. Flo

Ваш Ответ

1   ответ
1

TextWatcher а затем позвонитеnotifyDataSetChanged() на вашем адаптере:

searchText.addTextChangedListener(new TextWatcher() {

    @Override
    public void onTextChanged(CharSequence s, int start, int before, int count) {

    }

    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {

    }

    @Override
    public void afterTextChanged(Editable s) {
        cursor = db.rawQuery("SELECT * FROM tblRepTeritories WHERE RepCode like?", 
            new String[] {"%" + searchText.getText().toString() + "%"});
        adapter1.notifyDataSetChanged();

    }
});

Похожие вопросы