«MutableLivedata.PostValue (Boolean)», это в конечном итоге публикует «NULL» в LivedataAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 «MutableLivedata.PostValue (Boolean)», это в конечном итоге публикует «NULL» в Livedata

Сообщение Anonymous »

Код: Выделить всё

TypeSafe< /code> - это герметичный класс, который имеет 3 класса подкапсов,

Loading()
,

Код: Выделить всё

Success(data: T?)
,

Код: Выделить всё

Error(message: String?)< /code> < /p>
Это живые данные для Boolean:

val mutableUserDataFound : MutableLiveData = MutableLiveData()< /code>

сейчас, используя это веселье: < /p>
fun availabilityCheckforUserInfo() = viewModelScope.launch {
mutableUserDataFound.postValue(TypeSafe.Loading())
try {
val userinfo = repository.getUserInfo()
if (userinfo != null) {
mutableUserDataFound.postValue(TypeSafe.Success(true))
} else {
mutableUserDataFound.postValue(TypeSafe.Success(false))
}
} catch (e: Exception) {
mutableUserDataFound.postValue(TypeSafe.Error(e.message))
}
}
< /code>
Я больше беспокоюсь о True и False, получение не нулевого пользователя Info не является моим первым приоритетом здесь,

у меня есть логика пользовательского интерфейса на основе этого.

, но

postValue(true or false)
Даже если тип is typesafe.success () Данные возвращают null

Далее в UI есть, когда ()

Подробнее здесь: https://stackoverflow.com/questions/797 ... n-livedata
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»