У меня небольшие проблемы с наложением вида прогресса, столь же глупым, как и все.
Я создал подкласс UIViewController с XIB с черным 50% -ным непрозрачным фоном и индикатором активности в середине, я могу показать его и исчезнуть, когда мой удаленный класс данных пытается получить данные из удаленный сервер и т. д.
Отлично работает на iPhone, масштабируется и вращается.
Однако, когда я запускаю его в симуляторе iPad или на устройстве, квадрат заполняет только верхний левый угол экрана и не изменяется в соответствии с размером дисплея.
Но все мои другие представления создаются таким же образом, включая все табличные представления, на которые это будет опираться.
Мое приложение инициализирует табличное представление с одной ячейкой с надписью «Загрузка ...», а затем вызывает класс удаленных служб данных, который затем выполняет следующие действия:
progress = [[ProgressActivityViewController alloc] initWithNibName:@"ProgressActivityViewController" bundle:nil];
UIViewController *dlg = (UIViewController *)self.delegate;
[dlg.view addSubview:progress.view];
NB: прогресс устанавливается в файле .h как ProgressActivityViewController)
Это класс удаленных служб данных, который добавляет и удаляет подпредставление. Когда вы инициализируете класс RemoteData, вы передаете ему «self» в качестве делегата, чтобы он мог общаться с ним по протоколу.
Я знаю, что для этого нужна еще какая-то проверка типов с помощью isKindOfClass и т. Д., Которую я могу добавить позже, но мне нужно, чтобы простой вид растянулся на полный экран.
Этот код работает и выводит изображение на экран, но он просто не заполняет экран на iPad
Источник для примера индикатора активности, который я использовал, находится по этой ссылке:
http://tapadoo.com/2009/iphone-how-to-do-full-screen-activity-status/