以下代碼使用Observable.from()
發出列表中的項目。對於每個項目,flatMap()
的maxConcurrent值爲1將使用Observable
從devide.connectForPolice()
執行。 device.connectForPolice()
方法對當前項目執行若干操作,最終將調用Observable.just()
移至下一項。下面是代碼:單擊按鈕時強制onNext()
mConnectingSubscription = Observable.from(mAdapter.getItems())
.flatMap(device -> {
return device.connectForPolice(device.getName());
}, 1)
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Subscriber<String>() {
@Override
public void onCompleted() {}
@Override
public void onError(Throwable e) {}
@Override
public void onNext(String s) {
if (s.contains("str")) {
mAdapter.removeItem(s);
}
}
});
我會加入一個按鈕,屏幕上時,該代碼開始運行,並在點擊我想「逼」從原來的Observable.from(mAdapter.getItems())
當前項目完成所以未來列表中的項目可以通過鏈條。它本質上是一個「跳過」或「完成」按鈕。將此融入這一連串事件的最佳方式是什麼?