2010-11-14 2 views

ответ

9

Не уверен, что вы имеете в виду ...

[self.view addSubview:yoursubview]; 

[yoursubview removeFromSuperview]; 

За окном:

[[[UIApplication sharedApplication] keyWindow] addSubview:yourview]; 
+0

этих линий вид добавляется над текущей точкой зрения, но я хочу добавить его через окно. Я вызываю этот метод из tableviewcontroller, поэтому он добавляет новое представление (представление индикатора активности) только по таблице, но я хочу добавить его на весь экран (включая контроллер навигации и просмотра табуляции). – pankaj

+0

Теперь я понимаю, что вы имеете в виду. Редактировать ... –

+0

спасибо, что это сработало ..... – pankaj

0

Это работает для меня:

[[[[UIApplication sharedApplication] windows] objectAtIndex:0] addSubview:yourView]; 
+0

Предоставьте немного больше информации о решении, которое вы представляете, пожалуйста, –

+0

@ Решение JoëlSalamin Joseph, к сожалению, не работает для меня. Таким образом, вы можете выбрать все «окна» (NSArray) и выбрать «mainWindow» в индексе ' 0' –

0

[ [UIApplication sharedA pplication] .keyWindow.subviews.firstObject addSubview: yourView];

Если вы используете iPad в ландшафте, вы должны добавить свой взгляд на первый подсмотр окна ther.

@ Yuvaraj.M это решение вашей проблемы

+0

Кажется, [[[UIApplication sharedApplication] keyWindow] addSubview: yourview]; работает и на iPad в ландшафтном режиме. (ios8) –

0

Вы можете использовать, как это слишком.

Для добавления:

[[UIApplication sharedApplication].keyWindow.rootViewController addChildViewController:childVC]; 
[[UIApplication sharedApplication].keyWindow.rootViewController.view addSubview:childVC.view]; 

Для удаления:

[childVC.view removeFromSuperview]; 
[childVC removeFromParentViewController]; 
+0

Просто укажите правильный формат для вашего вопроса –

Смежные вопросы