4

我想创建一个自定义 segue 来用 curl up 动画交换 ViewControllers,但我找不到方法,-(void)perform 会是什么?

我有这个

-(void)perform{
    UIViewController *dst = [self destinationViewController];
    UIViewController *src = [self sourceViewController];    
    [UIView beginAnimations:nil context:nil];
    //change to set the time
    [UIView setAnimationDuration:1];
    [UIView setAnimationBeginsFromCurrentState:YES];
    [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:src.view    cache:YES];
    [UIView commitAnimations];
}

但是我不能改变视图,无论如何感谢您的帮助!

4

1 回答 1

3

没关系,我解决了,为了记录,我唯一要做的就是添加一个导航控制器,然后我可以使用自定义 segues,例如:

- (void) perform {
    UIViewController *src = (UIViewController *) self.sourceViewController;
    UIViewController *dst = (UIViewController *) self.destinationViewController;
    [UIView transitionWithView:src.navigationController.view duration:0.3
                       options:UIViewAnimationOptionTransitionFlipFromBottom
                    animations:^{
                        [src.navigationController pushViewController:dst animated:NO];
                    }
                    completion:NULL];
}
于 2012-02-20T04:09:56.450 回答