【发布时间】:2010-11-27 05:19:57
【问题描述】:
我想在推送视图控制器时显示自定义动画:我想实现类似“展开”动画的效果,这意味着新视图从给定的矩形展开,假设在动画期间为 [100,100 220,380]全屏。
任何建议从哪里开始,分别是任何文档、教程、链接? :)
好的。我可以使用以下代码制作展开动画:
if ([coming.view superview] == nil)
[self.view addSubview:coming.view];
coming.view.frame = CGRectMake(160,160,0,0);
[UIView beginAnimations:@"frame" context:nil];
[UIView setAnimationDuration:4];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[coming viewWillAppear:YES];
[going viewWillAppear:YES];
coming.view.frame = CGRectMake(0, 0, 320, 480);
[going viewDidDisappear:YES];
[coming viewDidAppear:YES];
[UIView commitAnimations];
我的视图已正确显示,但遗憾的是导航栏未更新。有没有办法手动做到这一点?
在示例代码中,一个函数在 0.03 秒内被调用,更新视图的转换。
不幸的是,当推送UIViewController 时,我无法调整视图框架的大小……是吗?
【问题讨论】:
标签: iphone animation uikit uiviewcontroller uinavigationcontroller