如何每次都推送到同一个UIViewController实例?

时间:2015-10-25 15:12:36

标签: ios objective-c uiviewcontroller segue unwind-segue

在故事板中我有一个UINavigationControllerrootViewController相关联,其中自定义推送segue到另外一个UIViewController自定义< / em> pop segue回来了。我试图立即(没有动画,iOS8)在两个VC之间来回移动,而无需一次又一次地重新创建目标VC。

以下是自定义segues:

@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&#39; d,我想避免。 如果没有丑陋的黑客,怎么能实现呢?

0 个答案:

没有答案