2017-02-20 20 views
0

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

Подробнее:

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

Лучше всего было бы отключить использование автозапуска и позиционировать неактивный вид с экрана, т. Е. Оставить его видимым?

ответ

2

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

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

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

+0

предотвратит любые проблемы с «неактивным» видом, поднимающим прикосновения/жесты, когда я их не хочу? – Greg

+0

Если альфа представления равна 0, он не получает события касания. – Gruntcakes

+0

хорошо. re layout Я думаю, я не могу использовать авто-макет? то есть эффективно хотите, чтобы оба вида контейнера автоматически расширялись в той же области, что и устройство, вращающееся или изменяющее свойство? – Greg

 Смежные вопросы

  • Нет связанных вопросов^_^