Если у вас проблемы с variable.value = true
, это потому, что вы не работаете с основным потоком.Для этого у LiveData есть специальный метод.Попробуйте использовать:
variable.postValue(true)
На основании документации:
setValue():
Устанавливает значение.Если есть активные наблюдатели, значение будет отправлено им.Этот метод должен вызываться из основного потока.
postValue():
Отправляет задачу в основной поток для установки заданного значения.Если вы вызывали этот метод несколько раз до того, как основной поток выполнил опубликованную задачу, будет отправлено только последнее значение.