2015-04-09 2 views
2

У меня есть UIViewControllervc2, который находится в стеке навигации после vc1. Когда я вращаю устройство в то время как на vc2, мне нужно vc1, чтобы обновить его интерфейс. Однако, когда я пытаюсь сделать это в willAnimateRotationToInterfaceOrientation, он не работает.Установить расположение предыдущего контроллера представления после поворота устройства

После того как я поп vc2 из стека, я пытаюсь обновить vc1 UI в viewWillAppear или viewDidLoad, но он не работает. Он работает, если я делаю это в viewDidAppear или viewWillLayoutSubviews, но он обновляет интерфейс только после того, как появится представление, чтобы пользователь мог видеть его анимированным на экране.

Есть ли способ установить его перед представлением, чтобы пользователь не видел анимацию подвью?

+0

Вы нашли решение? У меня такая же проблема. Мне нужно обновить макет предыдущего контроллера представления в стеке навигации, прежде чем он станет видимым в пользовательском переходе. – wolfrevo

+0

@ Себастиан Нах, я до сих пор этого не делал. Я имею его в viewDidAppear в настоящее время, но как состояния он анимирует после появления контроллера представления. –

ответ

0

Единственное решение, которое я нашел для работы до сих пор, - это тот, который я упомянул в своем вопросе, где я обновляю пользовательский интерфейс в viewDidAppear или viewWillLayoutSubviews. К сожалению, вы увидите, что ваши компоненты пользовательского интерфейса ожидают правильной позиции на экране, когда появится контроллер просмотра. Надеюсь, кто-то может найти лучшее решение.

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