//建立被观察者 Observable<String>observable=Observable.create(new ObservableOnSubscribe<String>() { @Override public void subscribe(ObservableEmitter<String> e) throws Exception { //事情做好后通知观察者。 e.onNext("下一步"); } }); //Observer(观察者)的创建: Observer<String>observer=new Observer<String>() { @Override public void onSubscribe(Disposable d) { } @Override public void onNext(String value) { //观察者收到通知 Log.i(TAG,"观察者收到通知"); } @Override public void onError(Throwable e) { } @Override public void onComplete() { } }; observable.subscribe(observer);
使用例子:
1.建立观察者,被观察者
2.建立观察的动作。使观察者和被观察者联系在一起。
消息是通过被观察者发出来,通知到观察者的。
例子:在同一个类文件中,开启了一个线程做下载的任务,可以把下载的代码放在被观察者的subscribe方法中,然后下载好了,调用一下e.next然后观察者就会在onNext
方法中接收到通知,说明被观察者的动作完成了。