Переворачивание UIViewController, управляемого UINavigationController, скрывает панель навигации

Я на 2 уровня ниже UINavigationContoller, который уже нажал несколько просмотров. Теперь я смотрю на изображение внутри одного из нажатых контроллеров представления, и когда я нажимаю информационную кнопку на панели навигации, я хочу, чтобы вспомогательное представление переворачивалось, оставляя панель навигации на месте. Как мне заставить переворачиваться только подвид (представление, которое было нажато)? Прямо сейчас панель навигации также переворачивается и не позволяет мне перемещаться по моему стеку.

-(void)showImageInfo
{   
    self.imgInfoViewController = [[ImageInfoViewController alloc] initWithNibName:@"ImageInfoViewController" bundle:nil];

    [self.imgInfoViewController setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];

    [self.navigationController presentModalViewController:self.imgInfoViewController animated:YES];

}

person Jeff    schedule 08.08.2010    source источник


Ответы (1)


код из примера UICatalog.... Я думаю, он сделает то, что вы ищете. По сути, вам нужно сделать еще немного кода, чтобы получить поведение флипа.

http://developer.apple.com/iphone/library/samplecode/UICatalog/Listings/TransitionViewController_m.html#//apple_ref/doc/uid/DTS40007710-TransitionViewController_m-DontLinkElementID_34

  - (IBAction)flipAction:(id)sender
    {
        [UIView beginAnimations:nil context:NULL];
        [UIView setAnimationDuration:kTransitionDuration];

        [UIView setAnimationTransition:([self.mainView superview] ? UIViewAnimationTransitionFlipFromLeft :UIViewAnimationTransitionFlipFromRight)                                      forView:self.containerView  cache:YES];
        if ([flipToView superview])
        {
            [self.flipToView removeFromSuperview];
            [self.containerView addSubview:mainView];
        }
        else
        {
            [self.mainView removeFromSuperview];
            [self.containerView addSubview:flipToView];
        }

        [UIView commitAnimations];
    }
person Aaron Saunders    schedule 08.08.2010
comment
Спасибо, Аарон, это именно то, что я искал. - person Jeff; 08.08.2010