我正在尝试使用以下方法呈现一个高度只有一半的视图控制器:
[self presentModalViewController:menu animated:YES];
问题在于当它被呈现时,视图控制器的大小与屏幕相同。 我还尝试将“菜单”设置为全屏大小,并将视图的透明度更改为白色,但也不起作用。
只需使用核心动画或带有半屏幕大小的UIView的动画转换。您需要一个容器视图将其添加到主视图中。
将半大小视图放置在屏幕下方(halfView.y = 480或320,具体取决于方向)。
向上动画它。
可能是这样的:
// set up an animation for the transition between the views
CATransition *animation = [CATransition animation];
[animation setDuration:0.5];
[animation setType:kCATransitionPush];
[animation setSubtype:kCATransitionFromBottom];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
[holderView addAnimation:animation forKey:@"SwitchToView1"];