寻找内部应用程序转换(旋转屏幕效果)

时间:2012-05-06 00:30:53

标签: iphone transitions

我希望在我的应用程序中进行转换,就像是来自古老的scooby doo漫画的神秘旋转墙。我想在切换视图时旋转屏幕。有人指出我正确的方向可以实现这个目标吗?

2 个答案:

答案 0 :(得分:2)

或者这个,它使用的墨水少得多:

UIView *bookCaseView;    // this is the container... the haunted wall
UIView *booksView;       // just an ordinary set of books, right?
UIView *spookyBackside;  // ruh-roh, raggy!

[UIView transitionWithView:containerView
           duration:0.2
           options:UIViewAnimationOptionTransitionFlipFromLeft
           animations:^{
               [booksView removeFromSuperview];
               [bookCaseView addSubview:spookyBackside]; }
           completion:NULL];

答案 1 :(得分:0)

我认为这就是你要找的东西:

[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0];

//optional if you want to do something after the animation
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(myAnimationDidFinish:finished:context:)];
//

[view2 setFrame:CGRectMake(0, 0, view2.frame.size.width, view2.frame.size.height)];
[view1 addSubview:view2];

[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:view1 cache:YES];
[UIView commitAnimations];

然后回头:

[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0];

//optional if you want to do something after the animation
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(myOtherAnimationDidFinish:finished:context:)];
//

[view2 removeFromSuperview];

[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:view1 cache:YES];
[UIView commitAnimations];