Контроллер представления исходного кода скрывается во время пользовательского перехода

Я пытаюсь сделать собственный переход, чтобы контроллер представления назначения скользил сверху вниз.

Свой код я писал по примеру из документации .

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

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

Вот мой код:

-(void)perform{

    UIViewController *splashScreen = self.sourceViewController;
    UIViewController *mainScreen = self.destinationViewController;

    //Place the destination VC above the visible area        
    mainScreen.view.center = CGPointMake(mainScreen.view.center.x,
                                          mainScreen.view.center.y-600);

    //Animation to move the VC down into the visible area
    [UIView animateWithDuration:1
                     animations:^{
                         mainScreen.view.center = CGPointMake(mainScreen.view.center.x, [[UIScreen mainScreen] bounds].size.height/2 );
                     }
     ];

    [splashScreen presentModalViewController:mainScreen animated:NO];
}

5
задан Community 23 May 2017 в 10:28
поделиться