transitionFromView:toView:duration:options:completion:不动画转换

cfi*_*her 7 cocoa-touch core-animation objective-c uiview uiviewanimationtransition

我有一个视图控制器,在其视图的给定区域中显示2个子视图控制器的视图.2个子视图控制器是FlopVC和FipVC.

我想动画从一个子视图到另一个子视图的过渡.我正在使用的代码是:

-(IBAction)flip:(id)sender{

    UIViewController *newVC = nil;

    if (self.isFlip) {
        newVC = [[FlopVC alloc] initWithNibName:nil bundle:nil];
    }else{
        newVC = [[FipVC alloc] initWithNibName:nil bundle:nil];
    }

    newVC.view.frame = CGRectMake(120, 20, 240, 260);
    [self.view addSubview:newVC.view];

    [UIView transitionFromView:self.currentVC.view
                        toView:newVC.view
                      duration:0.9
                       options:UIViewAnimationTransitionFlipFromLeft 
                    completion:^(BOOL finished) {
                        self.currentVC = newVC;
                        self.isFlip = ! self.isFlip;
                    }];



}
Run Code Online (Sandbox Code Playgroud)

子视图被交换,但没有任何动画.我究竟做错了什么?

PS完整项目在这里.

djr*_*ero 19

UIViewAnimationTransitionFlipFromLeft != UIViewAnimationOptionTransitionFlipFromLeft

  • Ruddy hell,我刚犯了同样的错误.谢谢Google + stackoverflow!:)(当然还有疯狂!) (2认同)