優雅的鏈式調用:
public class MainActivity extends AppCompatActivity {
public static final String TAG = "TAG";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Observable.create(new ObservableOnSubscribe<Integer>() {
@Override
public void subscribe(ObservableEmitter<Integer> emitter) throws Throwable {
emitter.onNext(1);
emitter.onNext(2);
emitter.onNext(3);
emitter.onComplete();
}
}).subscribe(new Observer<Integer>() {
@Override
public void onSubscribe(Disposable d) {
Log.d(TAG, "開始採用subscribe連接");
}
@Override
public void onNext(@NonNull Integer integer) {
Log.d(TAG, "對Next事件作出響應" + integer);
}
@Override
public void onError(Throwable e) {
Log.d(TAG, "對Error事件作出響應");
}
@Override
public void onComplete() {
Log.d(TAG, "對Complete事件作出響應");
}
});
}
}
日誌:
02-17 09:44:45.842 7779-7779/com.example.app2 D/TAG: 開始採用subscribe連接
02-17 09:44:45.843 7779-7779/com.example.app2 D/TAG: 對Next事件作出響應1
02-17 09:44:45.843 7779-7779/com.example.app2 D/TAG: 對Next事件作出響應2
02-17 09:44:45.843 7779-7779/com.example.app2 D/TAG: 對Next事件作出響應3
02-17 09:44:45.843 7779-7779/com.example.app2 D/TAG: 對Complete事件作出響應