[英]Example of Android MVVM + Databinding + Architecture Components (ViewModel and Room)
[英]Android Architecture Components Room ViewModel CompleteableFormAction
所以我想我會在一個較小的副項目上嘗試Room
。 我遵循了Florina Muntenescu的示例項目: android-architecture-components
我特別注意以下類: UserActivity.kt , UserViewModel.kt , UserDao.kt
UserViewModel#updateUserName()
返回Completable ,並且必須訂閱返回onComplete
或onError
當我嘗試將等效的viewModel.updateUserName(userName)
放入RxBindings
鏈中時。 如果我正常訂閱它,那么我將獲得Disposable!
進入onNext
,值為"DISPOSED"
在最后.subscribe
問題是這不會發出錯誤 ,因此永遠不知道是否存在問題
我如何修改下面的代碼,以便最終的.subscribe
返回正確的事件?
RxTextView.textChanges(editText)
.debounce(250L, TimeUnit.MILLISECONDS, schedulers.main)
.subscribeOn(schedulers.main)
.observeOn(schedulers.disk)
.map({ name ->
viewModel.updateUserName(name)
.subscribe(
{ Timber.d(“Success”) },
{ error -> Timber.d(error, “something went wrong”)) })
})
.observeOn(schedulers.main)
.subscribe(
{ Timber.d("name changed $it}") },
{ Timber.e(it, "name error") })
提前致謝
M.
轉這個
.map({ name ->
viewModel.updateUserName(name)
.subscribe(
{ Timber.d(“Success”) },
{ error -> Timber.d(error, “something went wrong”)) })
})
對此
.flatMapCompletable name ->
viewModel.updateUserName(name))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.