我正在尝试一个多视图应用程序,但是当我引入新的视图控制器时,我似乎无法让第一个视图控制器消失。我将第二个(即将到来的)视图控制器放置在索引 0 处,它只是将它放在后台。我认为 [going.view removeFromSuperview] 会删除原来的视图控制器,但事实并非如此......
UIViewController *coming = nil;
UIViewController *going = nil;
UIViewAnimationTransition transition;
if (answer == YES)
{
coming = boyController;
going = getInfoController;
transition = UIViewAnimationTransitionFlipFromLeft;
}
else
{
coming = girlController;
going = getInfoController;
transition = UIViewAnimationTransitionFlipFromLeft;
}
NSLog(child);
[UIView setAnimationTransition:transition forView: self.view cache:YES];
[coming viewWillAppear:YES];
[going viewWillDisappear:YES];
[going.view removeFromSuperview];
[self.view insertSubview:coming.view atIndex:0];
[going viewDidDisappear:YES];
[coming viewDidAppear:YES];
[UIView commitAnimations];