를 사용하여 검색이 나는 사용자 검색을 처리하고 (마지막 문자 후 검색 1 초) 입력에의 일시 정지를 처리하기위한 debounce()
을 사용하고 있습니다 : 안드로이드, RXJava, 디 바운스
RxSearchView.queryTextChanges(searchView)
.debounce(1, TimeUnit.SECONDS)
.subscribe(new Action1<CharSequence>() {
@Override
public void call(CharSequence charSequence) {
presenter.loadUsers(charSequence.toString());
}
});
사용자가 모든 문자를 삭제 그렇다면, 그것은 1 초를 기다린 다음 목록을로드합니다. 어떻게 처리하고 목록을 즉시로드 할 수 있습니까? 다른 매개 변수를 단지
debounce
운영자가 필요한 사용자의 경우
RxSearchView.queryTextChanges(searchView)
.debounce(1, TimeUnit.SECONDS)
.mergeWith(Observable.just("")) // manually tigger onNext with empty search
.subscribe(new Action1<CharSequence>() {
@Override
public void call(CharSequence charSequence) {
presenter.loadUsers(charSequence.toString());
}
});
debounce 함수에서'Observable.just (charSequence)'대신'Observable.empty()'를 사용하는 것이 좋습니다. 더 효율적이어야합니다. – JohnWowUs