RxJava
来源:互联网 发布:js div click事件 编辑:程序博客网 时间:2024/06/05 19:27
package com.example.demorxjava;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import java.util.concurrent.TimeUnit;
import rx.Observable;
import rx.Scheduler;
import rx.Subscriber;
import rx.android.schedulers.AndroidSchedulers;
import rx.functions.Action1;
import rx.functions.Func1;
import rx.functions.Func2;
import rx.schedulers.Schedulers;
public class MainActivity extends AppCompatActivity {
private Observable<Integer> mObservable;private Subscriber<String> mSubScriber;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //二。观察者 接收数据事件 一定订阅 /*接收完成事件*//*处理出错*//*接收更新数据*/ mSubScriber = new Subscriber<String>() { /*接收完成事件*/ @Override public void onCompleted() { ToastUtil.showShort(getApplicationContext(), "接收完成事件onCompleted"); } /*处理出错*/ @Override public void onError(Throwable e) { ToastUtil.showShort(getApplicationContext(), "接收异常处理e" + e.getMessage()); } /*接收更新数据*/ @Override public void onNext(String data) {
// printThread(“Subscriber-onNext”);
System.out.println(“-onNext–” + data);
} };}public void start(View view) { //subscribeOn()设置可观察对象的调度器 //observeOn设置一个安卓专用的更新界面的主线程调度器 //调度器用来给call分配线程 //一。可观察对象产生数据 Integer[] numbers = {1, 2, 3, 4, 5}; mObservable = Observable.from(numbers); mObservable.filter(integer -> integer % 2 == 0) .scan((sum,item)->sum+item) .map(value -> value + "") .delay(4, TimeUnit.SECONDS)//延时发送元素 让onNext()等待4秒 .delaySubscription(2,TimeUnit.SECONDS)//延时subscribe等待4秒 .subscribeOn(Schedulers.io())//Fun0 Fun1 Fun2.. .observeOn(AndroidSchedulers.mainThread()) .subscribe(( s) ->{ System.out.println("-onNext--" + s); } );//-->数据改变}private void printThread(String method) { System.out.println("method:" + method + " curr Thread:" + Thread.currentThread().getName());}
}
阅读全文
0 0
- rxjava
- RXJava
- RXJava
- RXJava
- RxJava
- Rxjava
- RxJava
- RxJava
- Rxjava
- RxJava
- RxJava
- RxJava
- RxJava
- RxJava
- RxJava
- RxJava
- rxjava
- RxJava
- SchedulersActivity
- Redis与Memcached的区别
- FromJustRxJava
- 后面要做的事,立即做
- how to make run command include the provided dependencies when using sbt
- RxJava
- 作业2
- nosql--简介
- HashMap和Hashtable的区别
- 电路实践
- RecyclerView代码中滚动方法(滚动并置顶)
- 【java集合】自己实现简易的HashMap
- ZOJ 3985 && 2017CCPC秦皇岛 E:String of CCPC
- 高并发解决方案--负载均衡