现在我正在使用故事板中的 segue 来推送视图控制器,并且只有一次推送转换。如何模仿代码中的“Pop”过渡?我现在可以在使用情节提要进行其他过渡的同时执行此操作吗?
更新
我尝试了这里第一条评论中的建议,并进行了一些更改。这是我所拥有的:
UIViewController *dst = [self destinationViewController];
UIViewController *src = [self sourceViewController];
[dst viewWillAppear:YES];
[dst viewDidAppear:NO];
CGRect screenBounds = [[UIScreen mainScreen] bounds];
CGRect f = CGRectMake(-screenBounds.size.width, 0, screenBounds.size.width, screenBounds.size.height);
dst.view.frame = f;
f.origin.x = screenBounds.size.width;
src.view.frame = f;
[UIView transitionFromView:src.view
toView:dst.view
duration:0.3
options:UIViewAnimationOptionTransitionNone
completion:^(BOOL finished){
[dst viewDidAppear:YES];
UINavigationController *nav = src.navigationController;
[nav popViewControllerAnimated:NO];
[nav pushViewController:dst animated:NO];
}];
这几乎是我想要的工作方式,但原始视图控制器只是消失而不是向右滑动。