viewWillAppear вызывается дважды с пользовательской передачей анимации с использованием transitionFromView

ищу выполнить замену окна 'Корневой контроллер представления другим контроллером представления, использующим свертывающуюся анимацию. Идея в том, что у меня естьSplashViewController отображается за пару секунд до перехода (performSegueWithIdentifier:) к следующему,LoginViewController, используя анимацию скручивания

мы создали кастомUIStoryboardSegue класс называетсяAnimatedSegue, Вот код переопределенногоperform метод:

- (void)perform
{
  UIViewController *source = self.sourceViewController;
  UIViewController *destination = self.destinationViewController;

  UIWindow *window = source.view.window;

  [UIView transitionFromView:source.view
                      toView:destination.view
                    duration:1.0
                     options:UIViewAnimationOptionTransitionCurlUp
                  completion:^(BOOL finished) {
                    [window setRootViewController:destination];
                  }];
}

Он работает нормально, за исключением того, что в iOS 6 (видимо, не в iOS 5)viewWillAppear: метод вызывается дважды наdestination просмотр контроллера. Кажется, этоs вызывается первый раз во время перехода и второй раз, когда он выполняется[window setRootViewController:destination];

Обратите внимание, что я неЯ не хочу использовать навигационный контроллер.SplashViewController освобождается (как и ожидалось) после завершения перехода.

Есть идеи, как решить мою проблему?

Ответы на вопрос(3)

Ваш ответ на вопрос