奇怪的警告解散模态视图控制器
我正在iOS 6上工作。 我的应用程序有一个标准的导航控制器,嵌入了一个CustomViewController。完美奇怪的警告解散模态视图控制器
-(IBAction)presentModalList:(id)sender {
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
StationsListViewController *list = [storyboard instantiateViewControllerWithIdentifier:@"StationsListViewController"];
[list setStationsData: [self.stationsData allValues]];
[self presentModalViewController:list animated:YES];
}
模态控制器节目但解聘生成一个警告: 在该控制器I创建模式视图这样。 的此控制器解雇方法是:生成
-(IBAction)backToMap
{
[self dismissModalViewControllerAnimated:YES];
}
的警告警告:
尝试从视图控制器< UINavigationController的驳回:0x1ed91620>而呈现或驳回正在进行!
有关于此的任何线索?
感谢
我意识到这是一个迟到的答案,但也许这将帮助别人寻找一个解决方案,这一点,这里是我做过什么:
-(IBAction)backToMap
{
if (![[self modalViewController] isBeingDismissed])
[self dismissModalViewControllerAnimated:YES];
}
对于我来说,我发现,线的代码被多次调用,我找不到为什么这是最简单的修复方法。
我也遇到了这个问题。可能发生的情况是您的'dimissModalViewControllerAnimated:'调用可能放置在一个回调(IBAction)方法中,该方法通过点击模态视图上的取消按钮(直接或间接)触发 - 已经处理解除模态视图。所以这个'dismissModalViewControllerAnimated:'可能是重复的,可以删除。 – smileyborg
我有一个类似的问题,但它是由一个viewController被呈现,然后几乎立即被解雇(所以解雇是在目前的动画)。所以我不得不检查'isBeingPresented'。 – Olie
这很奇怪。我认为@smileyborg是一些东西。但我不明白为什么它会自动消失?我所做的只是放松行动,我不需要直接解雇它? – huggie
感谢JDx让我走上正轨。我适应它形成这个解决方案,这将删除警告,而不使用那些弃用iOS 6的功能:
-(IBAction)backToMap
{
if (![self.presentedViewController isBeingDismissed]) {
[self dismissViewControllerAnimated:YES completion:^{}];
}
}
我发现这种方法是不可靠的 - 说五分之一的情况下,我仍然看到错误。
我的解决方案是使用完成块设置一个标志,控制是否安全解雇 - 这样你就不需要检查视图是否被解雇。
-(IBAction)presentModalView:(id)sender {
:
self.canDismiss = NO;
[self presentViewController:aVC animated:YES completion:^{
self.canDismiss = YES;
}];
:
}
在代码的位在解雇发生时,只检查标志:
-(void)dismisser {
:
if (self.canDismiss) {
[self dismissViewControllerAnimated:YES completion:nil];
}
:
}
变戏法似的,没有更多的错误!
瞄准iOS6的,这是对我工作:
if (![self.presentedViewController isBeingDismissed])
[self.presentedViewController dismissViewControllerAnimated:YES
completion:nil];
你可以做任何你解雇法的完成情况作为后想:
-(IBAction)backToMap
{
[self dismissViewControllerAnimated:YES
completion:^{
//Do something here
}];
}
相关 - HTTP://计算器。 com/questions/1412021/iphone-crashing-when-presenting-modal-view-controller – ChrisF