我想封装一个半透明的ViewController,就像名为CQAlertController的UIAlertController一样。在我写过的CQAlertController的viewDidLoad
方法中:
self.modalPresentationStyle = UIModalPresentationOverCurrentContext;
self.view.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.3];
但是当我在rootViewController中使用现有的CQAlertController时:
CQAlertController *alertController = [CQAlertController alertControllerWithTitle:@"title" message:@"detail" preferredStyle:CQAlertControllerStyleActionSheet];
[self presentViewController:alertController animated:YES completion:nil];
它没有呈现半透明的ViewController,而是一个全黑的ViewController。
有没有办法提出半透明的ViewController?
注意:
方法- (void)presentModalViewController:(UIViewController *)modalViewController animated:(BOOL)animated
已弃用,因此我根本不想使用此方法。
我想要的目标是使用方法presentViewController:animated:
来直接呈现半透明的ViewController ,就像现在的UIAlertController一样。
我应该为CQAlertController做什么?
答案 0 :(得分:0)
试试这个:
CQAlertController *alertController = [CQAlertController alertControllerWithTitle:@"title" message:@"detail" preferredStyle:CQAlertControllerStyleActionSheet];
alertController.modalPresentationStyle = UIModalPresentationOverCurrentContext;
[self presentViewController:alertController animated:YES completion:nil];
希望它有所帮助。