1、creat
Consumer consumer = new Consumer<T>() {
@Override
public void accept(T t) throws Exception {
Toast.makeText(getActivity(), "onNext:" + t, Toast.LENGTH_SHORT).show();
}
};
Observable<Integer> observable = Observable.create(new ObservableOnSubscribe<Integer>() {
@Override
public void subscribe(ObservableEmitter<Integer> emitter) throws Exception {
emitter.onNext(1);
emitter.onNext(2);
emitter.onComplete();
}
});
//被观察者和观察者建立订阅关系
observable.subscribe(consumer);
2、just
将为你创建一个Observable并自动为你调用onNext( ) 顺序发射数据
Observable.just("one", "two").subscribe(consumer);
3、fromArray
from 跟just 效果一样, just 是调用fromArray 实现的
String[] observableArr = new String[]{"one", "two"};
Observable.fromArray(observableArr).subscribe(consumer);
4、interval
间隔发送
Disposable subscribe;
subscribe = Observable.interval(1, TimeUnit.SECONDS, AndroidSchedulers.mainThread()).subscribe(new Consumer<Long>() {
@Override
public void accept(Long aLong) throws Exception {
if (aLong >= 3) {
subscribe.dispose();
}
Toast.makeText(getActivity(), "onNext:" + aLong, Toast.LENGTH_SHORT).show();
}
});
上述例子 没个一秒 发送一次数据,3秒以后停止发送
5、range
整数范围类发送 range (start,count)从start 向后count 发送
Observable.range(2, 5).subscribe(consumer);
Toast 2、3、4、5、6
6、repeat
重复发送
Observable.range(2, 3).repeat(2).subscribe(consumer);
Toast 2、3、2、3