思路是这个对话窗口,其实也是一个ViewController, 假设是ModalViewController
代码如下
// 判断系统版本
#define iOSVersionGreaterThanOrEqualTo(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)
// 按钮触发事件
- (void)buttonPressed:(id)sender
ModalViewController *modalVC = [[ModalViewController alloc] init];
modalVC.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
if ( iOSVersionGreaterThanOrEqualTo(@"8.0") ) {
modalVC.providesPresentationContextTransitionStyle = YES;
modalVC.definesPresentationContext = YES;
modalVC.modalPresentationStyle = UIModalPresentationOverCurrentContext;
[self presentViewController:modalVC animated:YES completion:nil];
} else {
self.view.window.rootViewController.modalPresentationStyle = UIModalPresentationCurrentContext;
[self presentViewController:modalVC animated:NO completion:nil];
self.view.window.rootViewController.modalPresentationStyle = UIModalPresentationFullScreen;
}
}