2012-08-06 1 views
1

iphone 응용 프로그램을 개발하려고합니다. 내비게이션 스택으로 밀어 넣는 동안 왼쪽에서 오른쪽으로 뷰를 슬라이드하는 방법을 알고 있습니다. 하지만 내 요구 사항은 네비게이션 스택을 밀어 넣으면서 위에서 아래로 뷰를 애니메이션화하는 것입니다. 그렇게하는 법?셔터와 같이 위에서 아래로로드하는 동안 UIView에 애니메이션을 적용하는 방법은 무엇입니까?

Google을 검색하고 있지만 만족스러운 결과를 찾지 못했습니다 .. 누군가가 알고 있다면 ... 어떻게 할 지 말해주세요.

info = [[InfoView alloc] initWithNibName:@"InfoView" bundle:nil]; 
[self.navigationController pushViewController:info animated:YES]; 

답변

2

당신은 탐색 스택에의 ViewController를 밀어 동안이 같은 뭔가를 시도 할 수 있습니다 :

 SecondViewController *VC2 = [[SecondViewController alloc]init]; 
     VC2.nameSupplied = self.nameField.text; 
     CGPoint mycenter = VC2.view.center; 
     CGPoint navCenter = self.navigationController.navigationBar.center; 
     VC2.view.center = CGPointMake(mycenter.x , mycenter.y - VC2.view.frame.size.height); 
     self.navigationController.navigationBar.center = CGPointMake(navCenter.x, navCenter.y - self.navigationController.navigationBar.frame.size.height); 
     [self.navigationController pushViewController:VC2 animated:NO]; 
     [UIView animateWithDuration:0.5 
          delay:0 
          options: UIViewAnimationCurveEaseOut 
         animations:^{ 
            VC2.view.center = mycenter; 
            self.navigationController.navigationBar.center = navCenter; 
       } 
       completion:^(BOOL finished){ 
        NSLog(@"Animation Done!"); 
       }]; 

을하지만 당신은 단지 동일한 뷰 컨트롤러에서 다른 뷰 (위에서 아래로 이동)를 표시 할 경우, 내가있어 .....

self.secondView.transform = CGAffineTransformMakeTranslation(0, secondView.frame.size.height); 
+0

덕분에 많은 :이 같이있는 UIView의 tranform 속성을 사용할 수 있습니다 t .... – user1523344

+0

@ user1523344 : 도움이 되었다면 답을 받아 들여야합니다. –

관련 문제