У меня есть следующее объявление:
val selectedPhotos: MutableLiveData<List<Photo>> = MutableLiveData()
У меня есть следующий метод, который должен возвращать selectedPhotos, который является типом MutableLiveData.
fun getSelectedPhotos(): MutableLiveData<List<Photo>> {
return selectedPhotos
}
Однако следующее дает мне ошибка:
Platform declaration clash: The following declarations have the same JVM signature (getSelectedPhotos()Landroidx/lifecycle/MutableLiveData;):
fun <get-selectedPhotos>(): MutableLiveData<List<Photo>> defined in com.raywenderlich.android.combinestagram.SharedViewModel
fun getSelectedPhotos(): MutableLiveData<List<Photo>> defined in com.raywenderlich.android.combinestagram.SharedViewModel
Однако, если я изменю веселье, чтобы вернуть следующее, все работает нормально:
fun getSelectedPhotos(): LiveData<List<Photo>> {
return selectedPhotos
}
Однако, глядя на следующее MutableLiveData расширяет LiveData
public class MutableLiveData<T> extends LiveData<T> {
...
}
Просто запутался, почему я не могу использовать MutableLiveData
в качестве возвращаемого типа, который является правильным типом, который я объявил.
Заранее большое спасибо,