0

同じviewControllerに3つのビューがあり、トランジションを使用してそれらを切り替える必要があります。それを行うための最良の方法はどれですか?ありがとうございました

4

4 に答える 4

2

質問を明確にしたかどうかはわかりません。一度に1つずつビューを表示したいと思います。その場合:-

1> UIScrollViewUIPageControlを使用して、フレームサイズが画面または任意の領域(幅は画面の幅と同じである必要があります。一度に1つ表示)に等しい水平方向にビューを追加できます。

2>もう1つの方法は、メソッドを使用することです。-

   [self.view bringSubViewToFront:yourSubView];

   [self.view sendSubViewToBack:yourSubView ];

要件に応じて。

3>アニメーションを使用してビューを切り替えることができます。

[UIView animateWithDuration:0.7
                      delay:1.2
                    options: UIViewAnimationCurveEaseOut
                 animations:^{
                 CGRect frame=assignAframeToSwitch;
                     yourView.frame = frame;

                 } 
                 completion:^(BOOL finished){
                     NSLog(@"Done!");
                 }];


                 OR

    _Weak CATransition *transition;
    transition = [CATransition animation];
transition.delegate=self;
    transition.duration = 0.75;
    transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];

    [[viewcontroller layer] addAnimation:transition forKey:@"transition"];
于 2012-05-18T14:53:02.280 に答える
1

CATransitionは、トランジションをアニメーション化するための最良の方法です

CATransition* trans = [CATransition animation];

[trans setType:kCATransitionPush];

[trans setDuration:0.5];

[trans setSubtype:kCATransitionFromBottom];

// code to change the view//

CALayer *layer = rootViewController.view.layer;

[layer addAnimation:trans forKey:@"Transition"];

それが役に立てば幸い。

于 2012-05-18T14:53:19.373 に答える
0

トランジションのアニメーションにこの次のコードを使用し、ボタンクリックイベントのビューを非表示にして表示する必要がある場合...

CATransition *animation = [CATransition animation];
    [animation setDelegate:self];   
    [animation setType:kCATransitionFromBottom];
    [animation setDuration:1.0];
    [animation setTimingFunction:[CAMediaTimingFunction functionWithName:
                                  kCAMediaTimingFunctionEaseInEaseOut]];
    [[yourViewControllers layer] addAnimation:animation forKey:@"transitionViewAnimation"];

希望、これはあなたを助けます.. :)

于 2012-05-18T14:52:12.720 に答える
0

これを行う最も簡単な方法は、組み込みのブロックベースのUIViewトランジションアニメーションを使用することです。UIViewのドキュメントをご覧ください。CATransitionメソッドよりも簡単です。

于 2012-05-18T15:16:10.377 に答える