1

私はiphoneアプリケーションを開発しようとしています。ナビゲーションスタックにプッシュしながら、ビューを左から右にスライドする方法を知っています。しかし、私の要件は、ナビゲーションスタックにプッシュしながら、ビューを上から下にアニメーション化することです。では、どうやってそれを行うのですか?

私はグーグルを検索していますが、満足のいく結果が見つかりませんでした..誰かがそれを知っていれば...その方法を教えてください.

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

1 に答える 1

2

ビューコントローラーをナビゲーション スタックにプッシュするときに、次のようなことを試すことができます。

       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!");
                 }];

ただし、同じView Controllerで別のビュー(上から下に移動)を表示したい場合は、次のように UIView のtranformプロパティを使用できます。

self.secondView.transform = CGAffineTransformMakeTranslation(0, secondView.frame.size.height);
于 2012-08-06T05:52:21.753 に答える