0

我有一个视图控制器,它在点击表格单元格时具有自定义推送转换,并在点击后栏按钮项时执行标准弹出转换。问题是当我尝试从前一个控制器转到同一个视图控制器时,应用程序崩溃了。以下是UINavigationControllerDelegate我正在实现的功能:

- (id<UIViewControllerAnimatedTransitioning>)navigationController:(UINavigationController *)navigationController animationControllerForOperation:(UINavigationControllerOperation)operation fromViewController:(UIViewController *)fromVC toViewController:(UIViewController *)toVC
{
    return (operation == UINavigationControllerOperationPush ? animator : nil);
}

任何线索表示赞赏!

提前致谢。

4

1 回答 1

7

我遇到了一个问题,其中 NavigationController 的委托被设置为已被释放的视图控制器,这导致[UINavigationController _customTransitionController:].

特别是在使用 unwind segues 时,似乎任何中间视图控制器在被释放之前都不会收到 viewWillDisappear 回调。这里的补救措施是在目标展开视图控制器中实现以下内容:

-(IBAction)unwindSegue:(UIStoryboardSegue*)segue{
    self.navigationController.delegate = nil;
}
于 2015-01-06T12:21:12.717 回答