Анимированные Подвиды - PullRequest
0 голосов
/ 15 июня 2011

У меня в приложении Ipad есть контроллер разделенного представления, в котором в подробном представлении есть подпредставления, которые являются UITableView. Функциональность, которую я пытаюсь реализовать, заключается в получении информационного представления в той же позиции подпредставления, когда нажата кнопка (информационная кнопка) в подпредставлении. Мне нужно получить это информационное представление по анимации, и эта анимация заключается в том, что при нажатии информационной кнопки само это подпредставление будет переворачиваться (UIAnimationOptionFlipFromRight), и информационное представление будет отображаться ...

Вот как попытаться это реализовать -

-(void) showInfoView: (id)sender
{

    infoView = [[InfoViewController alloc] initWithNibName:@"ViewViewController" bundle:nil];
    infoView.view.frame = CGRectMake(250, 300, 200, 200);

    [UIView transitionWithView:self.view duration:1
                       options:UIViewAnimationOptionTransitionFlipFromRight 
                    animations:^{
                        [self.view addSubview:infoView.view];
                    } 
                    completion:nil];
}

Когда я запускаю симулятор и нажимаю информационную кнопку в любом подпредставлении, происходит то, что анимация происходит идеально, то есть подпредставление переворачивается справа, но информационное представление не отображается.

Было бы замечательно, если бы кто-нибудь сказал мне, где я иду не так.

Ответы [ 2 ]

3 голосов
/ 15 июня 2011

Основные этапы выполнения анимации на экране следующие:

  1. Создать вид.
  2. Переместить его в исходное (закадровое) положение
  3. Добавить в иерархию представлений
  4. Выполнить анимацию.

Похоже, вы пропускаете шаг 3 и, возможно, шаг 2.

0 голосов
/ 28 декабря 2012

Вы пытались установить фрейм подпредставления в фрейм вашего суперпредставления, т.е.

 info.View.frame = self.view.frame;
...