【发布时间】:2015-12-03 09:56:19
【问题描述】:
我正在尝试使用 prepareForSegue 方法同时推送一定数量的控制器,但出现此错误:
嵌套推送动画可能导致导航栏损坏 和 在意外状态下完成导航转换。导航栏子视图树可能已损坏。
代码如下:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([[segue identifier] isEqualToString:@"rawSegue"]){
MyController * aController = [segue destinationViewController];
[aController setText:theText];
[aController setType:Type];
[aController setCountry:country];
}
}
为 NSMutableArray 中包含的每个对象调用 prepareForSegue 方法。如何调用多个视图控制器而不出现此错误? Segue 使用正确的标识符连接到情节提要中。
【问题讨论】:
-
你能粘贴你用来推送视图控制器的确切代码
-
问题不清楚,你想用segue同时推送两个控制器吗?同时显示多个 ViewController 或打开队列中的控制器?
-
警告说明了一切。如果在结束一个转换之前推送多个视图控制器可能会导致导航栏损坏。也就是说,如果您按下后退按钮,它可能会弹出顶视图控制器,您可能无法弹出其他视图控制器,或者您可以弹出一个视图控制器,并且可能有后退按钮没有效果等。
-
所以基本上答案是我不能用相同的 prepareForSegue 推送多个视图控制器,对吗?
标签: ios objective-c segue