Как открыть новый UIView, как всплывающее окно? - PullRequest
3 голосов
/ 06 августа 2010

У меня есть приложение с вкладками. В одной из вкладок есть кнопка. я хочу открыть новый контроллер uiview с помощью анимации, например всплывающих окон, когда я нажимаю кнопку. У popupviewcontroller есть пользовательское представление. Я хочу показать некоторые веб-страницы в виде всплывающих окон. я разработал popupview в IB.

как я могу открыть свой popupviewcontroller с анимацией, такой как FBConnect. FBconnect открывает диалоговое окно входа в систему с анимацией, как всплывающее окно.

Ответы [ 2 ]

8 голосов
/ 06 августа 2010

Вы не сможете, как всплывающее окно, открыть UIViewController.

Для этого вам придется использовать простой UIView

Добавить UIview (всплывающую форму как) к вашему текущемупросмотр.

- (void) initPopUpView {
  popup.alpha = 0;
  popup.frame = CGRectMake (160, 240, 0, 0);
  [self.view addSubview:popup];
}

- (void) animatePopUpShow {
  [UIView beginAnimations:nil context:NULL];
  [UIView setAnimationDuration:0.3];
  [UIView setAnimationDelegate:self];
  [UIView setAnimationWillStartSelector:@selector(initPopUpView)];

  popup.alpha = 1;
  popup.frame = CGRectMake (20, 40, 300, 400);

  [UIView commitAnimations];
}
4 голосов
/ 23 апреля 2016

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

Может быть полезным

(void)popup
{
    UIView *AView1=[[UIView alloc] initWithFrame:CGRectMake(self.view.frame.size.width/2,self.view.frame.size.height/2, 0, 0)];
    [AView1 setBackgroundColor:[UIColor redColor]];
    [UIView animateWithDuration:2.5 animations:^{AView1.frame = CGRectMake(35, 10, self.view.frame.size.width-70, self.view.frame.size.height-100);}];
}
...