2014-01-30 2 views
-2

У меня есть viewController, который отображает карту с аннотациями. Когда я нажимаю кнопку на баре, другой viewController должен анимировать поверх этого. Это работает, НО, когда анимация завершается, viewController в задней части исчезает. Он снова появляется снова, когда анимированный viewController снова закрывается.При анимации viewController сверху, тот, который находится сзади, исчезает.

Вот video того, что происходит - мы надеемся, что будет делать вещи более ясно:

Позвольте мне знать, если я должен включать код, а также.

+0

Я видел ваше видео. Но это не полезно. Не могли бы вы добавить свой код? –

+0

Проверьте это ** http: //stackoverflow.com/questions/11236367/display-clearcolor-uiviewcontroller-over-uiviewcontroller/11252969#11252969** –

ответ

1

Когда вы представляете контроллер вида, ожидается, что он отобразит весь экран. Таким образом, контроллеры представлений «ниже» имеют свои представления, удаленные из стека, чтобы сохранить ресурсы, которые, как ожидается, не потребуются.

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

  1. Либо, не будут представлены, просто добавьте подвид и анимировать его в
  2. Или передать изображение оригинала. взгляд на представленный вид, это становится фоном, и представленный вид оживляет подвью на фоне изображения.
+0

Примечание: Как упоминалось в ссылке в комментарии Kumar KI, в iOS7 if вы устанавливаете 'modalPresentationStyle' на' UIModalPresentationCustom' ваш фоновый viewController будет оставаться. –

+0

Я отлаживал свой код бит litta - в моем блоке завершения я пишу: [transitionContext completeTransition: YES]. Если я просто установил, что ti nil - переход «замерзает», НО вид сзади не исчезает. –

+0

Завершение перехода - это триггер для удаления необслуживаемых ресурсов, поскольку это значит, что представление источника больше не отображается. – Wain

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