在 Storyboard 中,我有一个UINavigationController
连接到rootViewController
,它有一个自定义的push segueUIViewController
和一个自定义的pop segue。我正在尝试立即(无动画,iOS8)在两个 VC 之间来回移动,而无需一次又一次地重新创建目标 VC。
以下是自定义序列:
@implementation PushNoAnimationSegue
// This is a hack!
static UIViewController *dvc;
-(void)perform {
if (!dvc) {
dvc = [self destinationViewController];
}
[[[self sourceViewController] navigationController] pushViewController:dvc animated:NO];
}
和
@implementation UnwindNoAnimationSegue
-(void)perform {
[[[self destinationViewController] navigationController] popToViewController:[self destinationViewController] animated:NO];
}
在这个简单的场景中,上述工作按预期工作,但当然PushNoAnimationSegue
是使用黑客,加上一些目标 VC 总是alloc
'd,我想避免。没有丑陋的黑客如何实现这一目标?