在其他视图控制器下面创建一个视图控制器

Posted

技术标签:

【中文标题】在其他视图控制器下面创建一个视图控制器【英文标题】:create a viewcontroller below other viewcontroller 【发布时间】:2013-02-27 08:00:07 【问题描述】:

我想创建一个 ios 应用程序,我想在其中翻转 uiviewcontrollers。我想使用滑动手势在uiviewcontrollers 之间切换。

我有 2 个uiviewcontrollers,我想将一个视图控制器设置在uiviewcontroller 封面的顶部,将一个视图控制器设置在底部,然后制作一个动画,让顶部uiviewcontroller 向左滑动到屏幕外,底部uiviewcontroller会逐步出现。

最好的方法是什么?

【问题讨论】:

为什么不使用 UIView 代替 UIViewController 我的项目现在是一个大项目,我必须继续使用旧代码,所以它成为一个大问题 【参考方案1】: 创建一个带有容器视图的 RootViewController。 将子视图控制器添加到根视图控制器。 添加手势识别器来操作视图。 使用 iOS5 的“视图控制器容器”功能,可以更轻松地管理生命周期调用。

【讨论】:

我只是 ios 的初学者,我曾经在 viewcontroller 中为 2 个视图创建过这个动画,但现在我想更改所有 viewcontroller。问题是如何显示 2 个视图控制器(顶部和底部)而不是 2 个视图 是的,如果你有一个根或主视图控制器,你可以添加子视图控制器。其中一些视图控制器的视图可能会出现在当前窗口中。您可以分层、使用手势、动画等。查看 API 文档中的视图控制器容器。 @Makio 首先学习一个MVC pattern。你不能显示控制器,你可以显示你的视图(作为 UIView 的子类)。 我有 2 个视图控制器,我将添加顶部视图控制器作为底部视图控制器的子视图控制器,并将底部视图控制器的视图添加为顶部视图控制器视图的子视图,如果这样做,当我移动视图时top viewcontroller ---->bottom viewcontroller 的视图也移动了,是吗? @OdNairy 我知道,我写的是显示控制器,我的意思是显示视图控制器的视图【参考方案2】:

正如 Jasper 所写,您应该创建新的 UIViewController - “root”,它将容纳孩子 UIViewControllers - “bottom”和“top”。它还将显示他们的观点。要实现“底部”在下方的效果,您应该先将其视图添加为子视图。

看看http://developer.apple.com/library/ios/#samplecode/PageControl/Introduction/Intro.html它可能会让你知道如何处理孩子UIViewControllers

【讨论】:

以上是关于在其他视图控制器下面创建一个视图控制器的主要内容,如果未能解决你的问题,请参考以下文章

需要为 iCarousel 创建一个 NSIndexPath 以将信息传递给其他视图控制器

UIViewController 作为其他视图控制器的子视图

在 iOS 中,如何创建一个始终位于所有其他视图控制器之上的按钮?

IPHONE 如何从其他类/视图控制器访问变量

如何创建从视图控制器到自身的 segue

如何在 Tab bar 控制器中使用一个 Xib 并创建多个视图控制器? [目标-C]