Как включить отображение индикатора активности во всем экране? - программирование
Подтвердить что ты не робот

Как включить отображение индикатора активности во всем экране?

Поэтому, когда пользователь нажимает на кнопку в моем приложении, я хотел бы создать новое представление с индикатором активности и охватить весь экран, пока действие кнопки не закончится.

Однако представление индикатора активности отображается только внутри представления таблицы, оно выглядит так:

enter image description here

Как заставить его покрывать весь экран? Включая панель навигации и панель инструментов таблицы.

Вот мой код, который я использую для создания представления:

self.overlayView = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds];
self.overlayView.backgroundColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.5];
self.activityIndicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
self.activityIndicator.center = self.overlayView.center;
[self.overlayView addSubview:self.activityIndicator];
[self.activityIndicator startAnimating];
[self.tableView addSubview:self.overlayView];
4b9b3361

Ответ 1

Изменить

[self.tableView addSubview:self.overlayView];

To

[self.navigationController.view addSubview:self.overlayView];

Установите соответствующий набросок.

Ответ 2

Сделайте это:

[[UIApplication sharedApplication].keyWindow addSubview:self.overlayView];