如何配置UINavigationControllers和UIViewControllers来处理通过自定义Segue的后退按钮

时间:2014-02-25 20:21:59

标签: ios ios7

我觉得这是一个非常基本的问题,但我使用自定义Segue进行与此类似的淡入过渡:How do I do a Fade/No transition between view controllers;我需要扭转行动,但我不确定如何实现这一目标。

Pop操作并在我的第二个视图控制器中淡出。有没有办法配置它,以便后退按钮使用UIStoryboardSegue的自定义子类的反向。我知道在自定义转换中,我可以设置UINavigationControllerOperationPop来执行相反的操作。有没有一种简单的方法让我通过使用后退按钮来反转我对Segue的淡入淡出?

THX

编辑1

我已经看过这个unwind with custom segue on UINavigationController pop via "back" button,但对于如何完成这项工作并没有给我一个满意的答案。

这是我的segue代码:

// MCFadeSegue.h
#import <UIKit/UIKit.h>

@interface MCFadeSegue : UIStoryboardSegue

@end

// MCFadeSegue.m
#import "MCFadeSegue.h"
#import <QuartzCore/QuartzCore.h>

@implementation MCFadeSegue

- (void) perform
{
    CATransition* transition = [CATransition animation];

    transition.duration = 0.8;
    transition.type = kCATransitionFade;

    [[self.sourceViewController navigationController].view.layer addAnimation:transition forKey:kCATransition];
    [[self.sourceViewController navigationController] pushViewController:[self destinationViewController] animated:NO];
}
@end

0 个答案:

没有答案