![](/img/trans.png)
[英]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.