开发者

iPhone View Animation

开发者 https://www.devze.com 2023-04-11 12:54 出处:网络
I am 开发者_如何学JAVAtrying to switch views, but I want the animation with the view lifts up and its like a piece of paper folding to see what is underneath.

I am 开发者_如何学JAVAtrying to switch views, but I want the animation with the view lifts up and its like a piece of paper folding to see what is underneath.

Any tutorials or examples of how to get that view animation, if it is an animation, would be appreciated.

Actually the view that the maps app uses when you hit the button on the corner.


Something like this should work:

MyViewController *myView = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil];
myView.navigationItem.leftBarButtonItem = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(dismissModalViewControllerAnimated:)] autorelease];
UINavigationController *navigation = [[UINavigationController alloc] initWithRootViewController:myView];
navigation.modalTransitionStyle = UIModalTransitionStylePartialCurl;
navigation.delegate = self;
[self presentModalViewController:navigation animated:YES];

The key here is the modalTransitionStyle property needs to be set to UIModalTransitionStylePartialCurl before presenting the modal view.

More info here: UIViewController Class Reference (look for modalPresentationStyle, modalTransitionStyle, presentModalViewController:animated:, and dismissModalViewControllerAnimated:).


There are two basic ways of doing this, the old one which is no longer recommended:

[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.5];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlDown 
                                  forView:containerView cache:YES];

[containerView addSubview:subview];

[UIView commitAnimations];

And the new one (It uses blocks which are supported from iOS 4 and on):

[UIView transitionWithView:containerView duration:0.5
    options:UIViewAnimationOptionTransitionCurlDown
    animations:^ { [containerView addSubview:subview]; }
    completion:nil];
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号