2011-03-30 3 views
3

다음과 같은 플립 애니메이션이 있습니다.팝업 뷰 컨트롤러에서 플립 애니메이션을 어떻게 수행합니까?

Picker *picker = [[Picker alloc] init]; 

      [self.navigationController pushViewController:picker animated:NO]; 

      [UIView animateWithDuration:0.5 
          animations:^{ 
           [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.navigationController.view cache:NO]; 
           } 
          completion:^(BOOL finished){ 
          }]; 
      [picker release]; 

이것은 완벽하게 작동합니다. 그러나 내가 돌아올 popViewController 싶을 때 :

하지만이 작동하지 않습니다, 애니메이션보기없이 그냥 다시 간다.

답변

6

애니메이션이 끝난 후 popViewControllerAnimated을 호출 해 보셨습니까?

+0

완벽하게 작동합니다. 감사합니다. 나중에 참조 할 수 있도록 필자는 그것을 완성하지 않았으며, 그 직전에 그 줄을 넣었습니다. – Andrew

+0

또한 애니메이션으로 변경 : 예기치 않게 중지하려면 예 어떻게 든이 일했습니다. – Andrew

+0

@Andrew 왜 애니메이션이^{}에 있고 완료가 아닌 ^() 인 경우 이것이 작동하는지 알아 냈습니까? 이 접근법이 저에게는 행복하지만 실제로 왜 그렇게 작동하는지 이해하고 싶습니다. – pnizzle

0

popViewController 호출을 완료 블록 내에 넣으면 먼저 애니메이션이 적용된 다음 팝업됩니다.

관련 문제