1
我想在鏈接請求上更新UI 2次。如何使用Rx更新鏈接請求上的UI Java
完成請求getUserByID()
後首次更新UI。第二個getParentName()
完成,但是當我嘗試更新第一個請求的UI並獲得線程問題的錯誤原因時。
我不知道如何解決這個問題。
示例代碼
API.getUserByID("USER ID")
.flatMap(user-> {
// How to update UI here?
return API.getParentName(user.getId()))
})
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(parent-> {
// It's ok to update UI cause of on main thread.
parentTextView.setText(parent.getName())
});
謝謝。
我可以更新的TextView上'doOnNext()',但它拋出錯誤 「StrictMode $ AndroidBlockGuardPolicy」 關於'訂閱()' –
您是不是要找'NetworkOnMainThreadException'?嘗試apply.'subscribeOn(Schedulers.io()'到每個網絡observable,而不是'flatmap',我upd回答 – zella
Thx,你救我的命:) –