Как удалить UIView и добавить еще один UIView в appDelegate во время выполнения? - PullRequest
0 голосов
/ 08 сентября 2011

У меня есть 2 UIViews, которые полностью зависят от файла AppDelegate.

Первый UIView - это рекламная страница, которую я должен запустить при запуске приложения. Но я уже сделал приложение с другим HomeView, которое зависит от AppDelegate.

Я добавляю AdView следующим образом в ApplicationDidFinishLaunching:

[self.view addSubView:AdView.view];

Но теперь я хочу, чтобы при нажатии кнопки DONE на странице AdView я перешел на HomeView. Но homeView должен быть подвидом appDelegate

Как я могу написать код на Готово кнопку, которая удалит AdView полностью и принесет Home View в качестве subView appDelegate ?? спасибо заранее

Ответы [ 2 ]

1 голос
/ 08 сентября 2011

Используйте removeFromSuperView функцию UIView .

- (void)removeFromSuperview ;

Используйте как показано ниже ...

[AdView removeFromSuperView];
0 голосов
/ 08 сентября 2011

в AdView, при событии нажатия кнопки:

[self removeFromSuperView];

EDITED

Как вы хотите: полностью удалить AdView и вывести Home View в качестве subView appDelegate

Я думаю, вы должны создать в делегате метод, который удаляет ваше подпредставление и добавляет к нему другое подпредставление.Для этого вам нужно получить ссылку вашего делегата в AdView и при нажатии кнопки вызвать метод этого делегата

- (void) methodInDelegate
{
   [AdView.view removeFromSuperView];
   [self performSelector:@selector(aMethodForAdding) withObject:nil afterDelay:0.1];
}

- (void) aMethodForAdding
 {
    [self.view addSubView:HomeView.view];
 }
...