【发布时间】:2014-09-23 11:39:20
【问题描述】:
这是我的项目:
它只在 iOS8 中崩溃。
我有 5 个视图控制器:rootViewController、A、B、C 和 D。每个视图控制器都有一个按钮,用于呈现除 D 之外的另一个视图控制器。Evert 时间呈现视图控制器时,Manager 单例对象将添加呈现的视图控制器成一个数组。最后一个视图控制器 D,它有一个关闭按钮,将使用数组来关闭视图控制器,代码如下:
while ([Manager sharedManager].viewCont.count) {
UIViewController *viewController = [[Manager sharedManager].viewCont lastObject];
[viewController dismissViewControllerAnimated:NO completion:nil];
[self removeViewCon];
}
但我遇到了崩溃,它显示:
我使用一些管理对象是因为我想在某些情况下管理视图控制器。 我的问题是为什么在“while”语句中会发生这种崩溃?是关于 runloop 还是 iOS8 有一些功能,比如 UIPresentationController 不允许这种情况?以及如何解决这个问题?
提前致谢。
【问题讨论】:
-
在 iOS8 中执行以下代码时出现相同的错误:
UIViewController *c = [[UIViewController alloc]init]; [c.view setBackgroundColor:[UIColor blackColor]]; [appController.navController.visibleViewController presentViewController:c animated:NO completion:^{ [appController.navController.visibleViewController dismissViewControllerAnimated:YES completion:^{ }]; }];
标签: uiviewcontroller ios8 presentmodalviewcontroller