Как переключаться между просмотрами контейнеров, но не использовать isHidden для обоих "живых"?

Предполагая, что у каждого есть два активных представления контейнера, как можно лучше переключаться между ними, чтобы не было мерцания?

Более детально:

  • У меня есть календарь и карта с сегментированной кнопкой управления. Таким образом, вы можете нажимать и переключаться между календарем или картой
  • при переключении между ними не нужно перерисовывать вещи, поэтому хочется, чтобы они были "живыми", так сказать
  • Я сделал это "isHidden" в качестве подхода, однако проблема здесь заключается в таких вещах, как проблемы синхронизации при ретрансляции, когда представление скрыто, то есть скрытое представление, возможно, не подняло свой новый макет после поворота и лайков. Также есть некоторое мерцание.

Будет ли наилучшим подходом "отключить" использование автоматического размещения и расположить неактивный вид за пределами экрана, то есть оставить его видимым?

1 ответ

Решение

Вы можете анимировать альфа-значения представлений:

UIView.animate(withDuration: 0.7, animations: {
            viewToDisappear.alpha           = 0
            viewToAppear.alpha              = 1
        })

Установите длительность по вкусу.

Другие вопросы по тегам