使用初始值创建 MediatorLiveData

Create MediatorLiveData with initial value

有没有办法用初始值初始化 MediatorLiveData? 我想实现如下目标:

val myLiveData = MediatorLiveData<String>("initial value")

MutableLiveData 有一个构造函数,它采用 documentation 的初始值,但是有没有办法为 MediatorLiveData 做同样的事情?

通过覆盖 addSource 和 post 初始值 postValue()setValue()

来尝试以下操作
val mediator: MediatorLiveData<String> = object : MediatorLiveData<String>() {
    override fun <S : Any?> addSource(source: LiveData<S>, onChanged: Observer<in S>) {
        postValue("initial value")
    }
}

这里没有构造函数,但 apply 作用域函数用于在其声明位置设置对象:

val myLiveData = MediatorLiveData<String>().apply {
    value = "initial value"
}