我正在尝试实现自定义视图呈现过渡样式。这是我的代码:
[myViewController setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];
[self presentViewController:myViewController animated:YES completion:^(void){}];
我希望在呈现视图时实现“从中心缩放”效果。我用JQuery UI做了一个期望效果的演示:http://jsfiddle.net/c7ztP/
有没有办法做到这一点?
答案 0 :(得分:8)
我会做的是以下
从启动视图控制器我会这样做
// OriginalViewController.h
newViewcontroller.view.transform = CGAffineTransformScale(CGAffineTransformIdentity, 0.0f, 0.0f);
[self presentViewController:newViewController animated:NO completion:nil];
在接收视图控制器上我会这样做
-(void)viewDidLoad {
[UIView animateWithDuration:0.3f animations:^{
self.view.transform = CGAffineTransformScale(CGAffineTransformIdentity, 1.0f, 1,0f);
}];
}
为此,您需要QuartzCore.framework
。另外为了让它更甜,我会为完整的alpha动画添加零alpha,因为它看起来更好。
答案 1 :(得分:2)
您应该使用此动画效果编写自己的Controller 请查看此控件:KGModal和UAModalPanel 检查动画示例的源代码。重写此代码以支持全屏视图并不困难。