Кнопка переключения не меняет статус после изменения фрагмента - PullRequest
1 голос
/ 04 мая 2020

У меня есть ToggleButton, который вызывает мою функцию и функцию вызывает службу:

@CheckedChange(R.id.tbValetMode)
protected void toggleValetMode(boolean isChecked) {
    mPresenter.sendValetModeState(isChecked);
}

Я активирую кнопку и изменяю фрагмент, и когда я возвращаюсь к тому же фрагменту, кнопка выглядит деактивированной. Однако я позвонил в службу один раз в фоновом режиме.

Поэтому, когда я снова нажимаю кнопку, служба получает сообщение об ошибке.

Я написал метод для проверки последнего состояния режима Vale. Этот метод возвращает данные из службы GET.

public void checkValetMode(Boolean result) {
    tbValetMode.setChecked(result);
}

Но метод setChecked () вызывает кнопку, как если бы она была нажата снова, и когда я изменяю фрагмент и возвращаюсь, кнопка кажется открытой но я получаю сообщение об ошибке, потому что он снова вызывает службу.

Ожидание: Для отображения кнопки переключения в соответствии с ответом метода, возвращенного службой GET, даже если фрагмент изменяется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...