今天,我将我的 Xcode 升级到最新版本(版本 5.1 (5B130a))以支持 iOS 7.1。完成此操作后,我像往常一样在 Xcode 中运行我的项目。然后应用程序崩溃。在升级 SDK 版本之前我没有更改任何代码。该代码在 iOS 5.x、6.x、7.0.x 中完美运行。
我只是在当前视图控制器中呈现另一个视图控制器。它们都由故事板初始化。在处理 presentViewController 方法时,它收到一条错误消息“线程 1:EXC_BAD_ACCESS (code=2, address=0x60)”。我检查了变量,它们都还活着,而不是释放的垃圾。iOS 7.1有什么问题?
该项目正在使用非ARC机制。这是我的代码:
@property (nonatomic, retain) ArticleViewController *articleView;
....
self.articleView = [[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil] instantiateViewControllerWithIdentifier:@"ArticleViewController"];
...
[self presentViewController:self.articleView animated:NO completion:^() {
log(@"has shown article page...");
}];
但如果使用 addSubView 函数呈现另一个视图,它工作正常:
[self.view addSubView:self.articleView.view];
我真的不知道为什么会这样。