我正在应用程序中启动UIActionsheet。旋转时,动作表未居中对齐,因此在旋转时,我关闭了动作表并使用打开
[actionsheet dismissWithClickedButtonIndex:-1 animated:NO];
[actionsheet showInView:self.view];
但是问题是在iOS6中它引发以下错误
*由于未捕获的异常'UIViewControllerHierarchyInconsistency'而终止应用程序,原因:'一个视图一次最多只能与一个视图控制器关联!视图>与关联。在将此视图与关联之前,请清除此关联。
我尝试使用:
[actionsheet showInView:[UIApplication sharedApplication].keyWindow.rootViewController.view];
但我仍然遇到相同的错误。
在iOS7上一切正常。
我已经搜索了很多东西,但是修复大多是通过XIB完成的,我想以编程方式解决它。有人对此有任何想法吗?
最佳答案
编辑:此问题的原因是删除并且无法同时显示
[actionsheet dismissWithClickedButtonIndex:-1 animated:NO];
//adding some delay as dismissing one actionsheet and presenting actionsheet after some time
[self performSelector:@selector(showActionSheet) withObject:nil afterDelay:0.3];
在下面添加这些方法:
-(void)showActionSheet
{
[actionsheet showInView:self.view];
}
关于ios - 旋转时的UIActionsheet,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22503344/