移入界面后,LiveData不再起作用

时间:2019-07-05 09:43:47

标签: android kotlin

我有一个与状态兼容的接口。

interface HasState<S> {
    val state: S?
}

,在实现中,状态通过liveData公开。一切正常,如下所示:

class StateThing: HasState<State> {
    override val state = State()

    val liveData = MutableLiveData<State>()

    // functions which update liveData
}

除了我将实时数据移至HasState接口并在实现中覆盖它的那一刻,它都中断了。这不起作用:

interface HasState<S> {
    val state: S?
    val liveData: MutableLiveData<S>
}

class StateThing: HasState<State> {
    override val state = State()

    override val liveData = MutableLiveData<State>()

    // functions which update liveData
}

HasState仍然像以前一样公开liveData,但是现在liveData.observe(lifecycleOwner)函数从不接收Observer事件。

为什么两者之间有区别?

0 个答案:

没有答案
相关问题