Java教程

Android EditText 试用RxJava搜索框延时搜索

本文主要是介绍Android EditText 试用RxJava搜索框延时搜索,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

使用RxJava能够更简单的监听EditText文本变化,即使用debounce操作符处理不断产生的文本变化事件。试用Handler 会造成内存泄漏,所以推荐使用RxJava的方法

debounce操作符对源Observable每产生一个结果后,如果在规定的间隔时间内没有别的结果产生,则把这个结果提交给订阅者处理,否则忽略该结果。

RxTextView.textChangeEvents(etClearSearch)
        .debounce(300, TimeUnit.MILLISECONDS)
        .observeOn(AndroidSchedulers.mainThread())
        .subscribe(new Observer<TextViewTextChangeEvent>() {
        @Override
        public void onCompleted() {

        }

        @Override
        public void one rror(Throwable e) {

        }

        @Override
        public void onNext(TextViewTextChangeEvent textViewTextChangeEvent) {
            //自己要操作的。。。
        }
});

这篇关于Android EditText 试用RxJava搜索框延时搜索的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!