Поведение, которое вы видите, является результатом двух вещей:
- Причина, по которой кнопка изначально видима, состоит в том, что у вас нет android: видимость = "ушел" в вашем XML, икод для установки его невидимым не сработал, потому что пока не произошло ни одного щелчка.
- причина, по которой вам приходится дважды нажимать кнопку переключения, чтобы установить его как невидимый: первый щелчок переключает переключатель с не отмеченногопроверено, поэтому код устанавливает кнопку (которая уже видна) для видимости.ВТОРОЙ щелчок - это первый раз, когда срабатывает onClick, а кнопка переключения не проверяется.Вот когда вы на самом деле видите, что кнопка становится невидимой.
Чтобы исправить, просто добавьте "android: visibility =" GONE "в качестве атрибута кнопки пропуска в XML-коде вашего макета.