Arc*_*nes 5 android mvvm android-viewmodel android-architecture-components android-jetpack
在 Android 上下文中,当收到响应时,决策点是否应该在 ViewModel 中,类似于我的 ViewModel:
if (response.isSuccess()) {
nextScreenLiveData.value = GO_TO_NEXT_SCREEN
} else if(response.isNeedAnotherScreen()) {
anotherScreenLiveData.value = ANOTHER_SCREEN
} else {
backToBeforeScreen = BACK_TO_BEFORE_SCREEN
}
Run Code Online (Sandbox Code Playgroud)
然后所有这些 LiveData 将在 Activity/Fragment 中被观察到。意味着每个 LiveData 有一个观察者。
或者最好在我的 ViewModel 中做这样的事情:
liveData.value = response
Run Code Online (Sandbox Code Playgroud)
然后在我的活动/片段中做出决定:
liveData.observe(this, Observer { response ->
if (response.isSuccess()) {
goToNextScreen()
} else if(response.isNeedAnotherScreen()) {
goToAnotherScreen()
} else {
goBack()
}
}
Run Code Online (Sandbox Code Playgroud)
提前致谢。
| 归档时间: |
|
| 查看次数: |
1590 次 |
| 最近记录: |