在 iOS 8 中,Apple 在内部使用 UIAlertController 来实现警报视图和操作表的功能。因此,当您想在委托方法中显示 UIActionSheet 或 UIAlertView 后以模态方式显示 UIViewController 时,例如
(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
和
(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
您必须首先关闭 UIAlertController,如下所示:
if(SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"8.0"))
{
UIViewController *vc = [[[[UIApplication sharedApplication] delegate] window] rootViewController];
[vc dismissViewControllerAnimated:NO completion:^{
}];
}
现在您可以在 iOS 8 中呈现模态 UIViewController。