RxJava 实现模糊搜索
生活随笔
收集整理的这篇文章主要介绍了
RxJava 实现模糊搜索
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
实现的效果图如下
下面说下实现的具体方法
1 引入库
implementation "io.reactivex.rxjava3:rxjava:3.0.0-RC5"implementation 'io.reactivex.rxjava2:rxandroid:2.1.1'implementation 'com.jakewharton.rxbinding3:rxbinding:3.1.0'
有rxbinding 结合rxjava 来实现效果
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><EditTextandroid:id="@+id/edt"android:layout_width="match_parent"android:layout_height="44dp"android:hint="请输入搜索的内容"android:background="@null"/><TextViewandroid:id="@+id/txt"android:layout_height="44dp"android:layout_width="match_parent"android:textSize="20dp"android:textColor="@color/colorAccent"android:gravity="center"/></LinearLayout>
public class SearchActivity extends AppCompatActivity {private EditText editText;private TextView textView;@Overrideprotected void onCreate(@Nullable Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.search_activity_layout);editText = findViewById(R.id.edt);textView = findViewById(R.id.txt);RxTextView.textChanges(editText).debounce(1, TimeUnit.SECONDS).skip(1).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer<CharSequence>() {@Overridepublic void onSubscribe(Disposable d) {}@Overridepublic void onNext(CharSequence charSequence) {textView.setText("接口请求传递的数据:"+charSequence.toString());}@Overridepublic void onError(Throwable e) {Log.d("error",e.toString());}@Overridepublic void onComplete() {Log.d("onComplete","事件完成");}});}
}
总结
以上是生活随笔为你收集整理的RxJava 实现模糊搜索的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 泰国一套别墅多少钱?
- 下一篇: bash: vue: command n