在iOS 8设备上运行为iOS 7.1构建的应用时,我遇到了一些崩溃。
经过一项小规模的研究后,我发现它是由于企图解雇已经被解雇的元素而导致以下错误:“ 正在进行演示或解雇时,尝试从视图控制器中解除! ”
毋庸置疑,以前的迁移并没有发生这种情况。 我追溯到了
(void)alertView:(UIAlertView *)alertView willDismissWithButtonIndex:(NSInteger)buttonIndex
并改为应用
(void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex
似乎解决了崩溃问题。
我正在使用willDismiss ...委托来通知尝试退出当前阶段并很快关闭阶段。
我的问题是,如果这两者之间在我目前的使用方面存在重大差异,那么通过在这两者之间切换可能会产生什么后果?
我正在使用cocos2d v1.1.0-beta2b
答案 0 :(得分:0)
对我而言,Attempt to dismiss from view controller while a presentation or dismiss is in progress!
似乎很清楚。在另一个在场或解雇期间正在致电-dismissViewControllerAnimated:completion:
。
以下是UIAlertViewDelegate
的文档:
-alertView:willDismissWithButtonIndex:
在取消警报视图之前发送给代理人。
-alertView:didDismissWithButtonIndex:
从屏幕上取消警报视图后发送给代理人。
使用-alertView:willDismissWithButtonIndex:
时,如果您呈现或关闭视图控制器,则可能会踩到UIAlertView
视图控制器的关闭,从而产生错误。
使用-alertView:didDismissWithButtonIndex:
时,如果您呈现或关闭视图控制器,则表示您没有此错误:UIAlertView
的视图控制器已被解除。