Я хочу размыть свой UITableView
(внутри UITableViewController
), когда я представляю UIAlertController
(UIAlertControllerStyleActionSheet
), но при использовании UIBlurEffect
и UIVisualEffectView
он не размывает содержимое табличного представления за ним; он просто блокирует это. Происходит как на симуляторе, так и на устройстве.
- (void)showAlert {
UIBlurEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];
UIVisualEffectView *visualEffectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];
visualEffectView.frame = CGRectMake(0, self.tableView.contentOffset.y, self.view.frame.size.width, self.view.frame.size.height);
[self.view addSubview:visualEffectView];
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"Alert Title" message:@"Alert Message" preferredStyle:UIAlertControllerStyleActionSheet];
[alert addAction:[UIAlertAction actionWithTitle:@"Action 1" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
// handle choice...
[visualEffectView removeFromSuperview];
}]];
[alert addAction:[UIAlertAction actionWithTitle:@"Action 2" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
// handle choice...
[visualEffectView removeFromSuperview];
}]];
[self presentViewController:alert animated:YES completion:nil];
}
Снимок экрана:
В представлении таблицы за листом действий есть текстовое содержимое, которое должно отображаться как размытое, например. как на этом изображении:
UIBlurEffect
все равно не очень хорошо работает с текстом. - person shim   schedule 29.06.2016