popViewControllerAnimated动画无效

Man*_*noj 0 objective-c uinavigationcontroller ios5 popviewcontrolleranimated

我知道这是一个重复的问题,但我仍然无法弄明白.当应用程序转到后台然后重新启动时,动画无效.应用程序第一次启动时我可以在视图之间获得推/动画动画,但是一旦应用程序转到后台,它就会停止动画制作.

我创建了一个自定义导航控制器类,在其中扩展UINavigationController和编写popViewControllerAnimated方法.

- (UIViewController *)popViewControllerAnimated:(BOOL)animated {
    UIViewController* viewController = [super popViewControllerAnimated:animated];    
    UIViewController* nextViewControler = [[self viewControllers] lastObject];
    [nextViewControler viewWillAppear:animated];    
    [viewController viewWillDisappear:animated];
    return viewController;
}
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏.

Mih*_*bar 6

这种情况如果在某个地方你的代码,你要么迫使调用的一个viewWillAppear同行YESNO而不是让iOS的决定,或者如果你不匹配的呼叫[super viewWillAppear:animated]viewDidAppear.


小智 6

在我的最后,它[super viewDidAppear:animated]在我的 UITabBarController 中丢失了电话。

它实际上产生了一些其他奇怪的行为,所以我建议总是调用[super viewWill/Did*]方法