Я сделал EditText, где я набираю внутри него какое-то имя.
Мне хотелось, чтобы приложение выполняло поиск каждый раз, когда что-то менялось в моем EditText .
Я использовал следующий код:
txt_search.addTextChangedListener( new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
query = txt_search.getText().toString();
fetchBooks(query);
}
@Override
public void afterTextChanged(Editable s) {
query = txt_search.getText().toString();
fetchBooks(query);
}
} );
Где fetchBooks
- это метод, который выполняет поиск внутри API на основе запроса.
Проблема, с которой я сталкиваюсь, заключается в том, что иногда поиск выполняетсязастрял. Если, например, я набираю довольно быстро, это дает результаты только для первых нескольких букв, а не для всего запроса в конце.
В конце концов, я пытаюсь получить то, что приложение будет постоянновыполнять поиск по тексту внутри EditText
.
Есть ли способ получить его, не запутавшись в результатах?
Спасибо