【问题标题】:How would I make a UIViewController appear to "slide out" from underneath another VC when using ViewController containment?使用 ViewController 包含时,如何使 UIViewController 从另一个 VC 下方“滑出”?
【发布时间】:2012-07-19 19:37:27
【问题描述】:
我正在使用 ViewController 容器,我的目标是 iOS5 及更高版本。我有一个包含侧边栏 (B) 和内容区域 (C) 的容器 viewController (A)。我想要这样当用户点击侧边栏 (B) 上的按钮时,tableViewController (D) 将从侧边栏 (B) 下方和内容区域 (C) 上方“滑出”。
解决此问题的最佳方法是什么?
我刚刚开始了解基本的 viewController 容器(包含两个 viewController 的父级),但是从子 viewController 下方滑出一个额外的 viewController 已经很难了。
【问题讨论】:
标签:
ipad
ios5
animation
uiviewcontroller
【解决方案1】:
您需要采用两种方法之一。
在 iPad 上使用 UIPopOverViewController。对于许多 iPad 应用程序来说,这是非常标准的行为,Wanderlich 有一个很棒的教程here,我在第一个应用程序中使用了它。
-
您还可以采取以下步骤:
- 分配、初始化和设置表格视图的样式。
- 将其添加为其父视图控制器的子视图。确保它的框架位于视图控制器 B 的下方。
- 使用 [viewcontrollerA bringSubviewToFront:viewcontrollerB];
- 最后,使用 [UIView animateSubviews] 将视图控制器 D 滑动到应有的位置。
关闭 VCD 时,以与您在其中设置动画相同的方式对其进行动画处理。
希望有帮助!