我正在从A推送BViewController。 B包含一个webview,在viewDidLoad时开始加载页面。将B弹出到A时,我会遇到一种奇怪的行为,
我检查了导航堆栈上的两种情况viewcontrollers。两种情况都有相同的结果,2个相同的对象,没有区别!
-(IBAction)goBackOrg:(id)sender{
NSArray *viewControllers = self.navigationController.viewControllers;
[[self navigationController] popViewControllerAnimated:NO];
}
并且为了以前推动它,我正在使用
if(!self.BController){
self.BController = [[BViewController alloc] initWithNibName:@"BViewController" bundle:nil anUrlDest:urlSocial];
}
[[self navigationController] pushViewController:self.BController animated:NO];
答案 0 :(得分:1)
当您尝试访问已解除分配的对象时,会发生EXC_BAD_ACCESS。
因此以下可能是您的问题:当您弹出ViewController B时,它正在被卸载。如果在卸载ViewController B之后Web视图加载完成,则会执行一些回调代码,尝试对ViewController或其视图(或类似)执行某些操作。
答案 1 :(得分:0)
可能是您正在Thread
加载您的webView,当您使用线程时,您无法在UI中进行更改,否则您的应用程序将崩溃。
所以只需在mainThread上执行此任务。