【发布时间】:2016-06-29 12:10:20
【问题描述】:
过去一周我一直在解决这个问题,但我无法解决它。我能够通过使用 Zombie 进程的一些堆栈溢出建议的帮助找到具体抛出异常的位置,并发现当我出于某种原因在 iOS 8 中执行popToViewController 时,iOS 8 在我的流程中丢失了一些东西,但我没有知道它是什么。我认为这可能与navigationController 有关,我尝试了各种方法来popToViewController。
我的问题是,如果有人在下面的代码中看到罪魁祸首,还有没有更好的方法来弹出 iOS 8 用户的视图控制器。当用户返回视图 2 并按下视图中的任何按钮时发生崩溃,无论是移动到另一个视图的 UIButton 还是尝试使用 navigationButton 向后移动。
流程是这样的:View 1 --> View 2 --> View 3 --> View 4 === View 4 弹回到View 2:
查看 4:ChooseTempatureViewController:
Class classToPopTo = [BuildTempatureViewController class];
for (UIViewController *view in [self.navigationController.viewControllers objectEnumerator]) {
if([view class] == classToPopTo){
NSLog(@"%s STARTED POP TO", __PRETTY_FUNCTION__);
[self.navigationController popToViewController:view animated:YES];
return;
}
}
查看2:TempatureViewController:
按任意按钮并接收EXC_BAD_ACCESS 并启用僵尸进程它给了我这个僵尸
[TempatureViewController navigationController:animationControllerForOperation:fromViewController:toViewController:]: message sent to deallocated instance 0x86d67720
任何可以帮助我的 iOS 8 用户的建议将不胜感激,项目正在使用 ARC
我也在使用XIBs
【问题讨论】:
标签: ios objective-c iphone ios8 exc-bad-access