【发布时间】:2020-05-04 06:33:50
【问题描述】:
以下代码基于项目架构示例,您可以查看here。
在我看来,UI 会先显示带有R.string.description_hint 的小吃文本,然后显示带有R.string.empty_task_message 的小吃文本。
但是我发现只有R.string.empty_task_message的snack文字显示出来了,如何解决?
TasksFragment.kt
private fun setupSnackbar() {
view?.setupSnackbar(this, viewModel.snackbarText, Snackbar.LENGTH_SHORT)
viewModel.setMy1()
//Wait until UI updated
viewModel.setMy2()
}
TasksViewModel.kt
class TasksViewModel(
private val tasksRepository: TasksRepository,
private val savedStateHandle: SavedStateHandle
) : ViewModel() {
private val _snackbarText = MutableLiveData<Event<Int>>()
val snackbarText: LiveData<Event<Int>> = _snackbarText
fun setMy1(){
_snackbarText.value=Event(R.string.description_hint)
}
fun setMy2(){
_snackbarText.value=Event(R.string.empty_task_message)
}
...
}
【问题讨论】: