2013-04-24 4 views
1

Я использую uitapgestures, и я хочу, чтобы uiviewcontroller перешел на другой контроллер с флип-анимацией. Я пробовал использовать uimodaltransitionflip, он работает, но кнопка на следующем контроллере не сможет работать. Как мне это сделать?Как заставить uiviewcontroller перевернуть на следующую страницу?

Для этого кода кнопка работает на другой странице.

- (void)imageView1DoubleTapped:(UITapGestureRecognizer *)gestureRecognizer 
{ 
    GFStoryBoardViewController *gfsb = [[GFStoryBoardViewController alloc]initWithNibName:nil bundle:nil]; 



    [self.navigationController pushViewController:gfsb animated:YES]; 

} 

Для этого кода кнопка не работает на следующей странице

- (void)imageView2DoubleTapped:(UITapGestureRecognizer *)gestureRecognizer 
{ 
    SBStoryBoardViewController *sbsb = [[SBStoryBoardViewController alloc]initWithNibName:nil bundle:nil]; 

    sbsb.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 

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

} 
+1

Можете ли вы предоставить нам код. Вы уверены, что проблема в переводе? Вероятно, кнопка просто не работает на вашем контроллере? – NDY

+0

Я редактировал мои коды выше. взгляни, пожалуйста. Благодаря! – benedict

ответ

0

Вам необходимо представление в целях контроллера корневого в качестве контейнера держать анимацию. Это может быть пользовательский контроллер представления контейнера или UIWindow. (т.е. [UIApplication sharedApplication] .window)

Тогда это сделать:

[UIView transitionWithView:rootViewController.view duration:0.40 options:UIViewAnimationOptionTransitionFlipFromRight animations:^ 
    { 
     [currentViewController.view removeFromSuperView]; 
     //This will take up the whole screen of the container view. If using UIWindow 
     //If using UIWindow, you may need to adjust to accomodate the status bar. 
     newViewController.view.frame = rootViewController.view.bounds 
     [rootViewController.view addSubView:newViewController.view]; 

    } completion:^(BOOL complete) 
    { 
     //Anything that you want to happen afterwards 
    }]; 
Смежные вопросы