Xcode Swift 如何将 UIViewController 置于父 UIView Controller 之下



我想做一个与Facebook应用程序类似的效果。所以我想创建导航滑出效果。

但是,当我将带有菜单的UIViewController放在带有内容的父UIViewController下方,然后将父视图移到一边时,我的菜单没有显示。我能看到的都是黑屏。但是菜单框架位于正确的位置。

有什么建议我该怎么办?

内容视图将是单独的 UIViewControllers。

我的情况

和你一样,最后我使用了一个自定义类,该类的灵感来自FaceBook和Wunderlist应用程序,并且很容易添加到项目中:https://github.com/John-Lluch/SWRevealViewController

子视图控制器始终位于父视图控制器的视图之上。我认为旧的和新的视图控制器应该是兄弟姐妹,并使用父视图控制器将它们两者添加。实际上,本机 UINavigationController 的子控制器是兄弟姐妹,而不是子父关系。

我敦促你不要自己这样做,而是使用许多库之一,这些库已经被许多贡献者进行了严格的测试。其中一个好的是MMDrawerController,但还有很多其他的。看看cococontrols的更多例子。

我之前已经使用iOS7中引入的自定义过渡实现了与此类似的机制。例如:可以模式显示菜单,但使用自定义过渡使其从左侧显示,并且仅占屏幕的一部分。

使用

自定义交互式过渡还允许您使用平移手势识别器将主视图控制器拖回菜单顶部 - 就像在 Facebook 应用程序中一样。

这里有一个关于自定义过渡的好教程:http://www.thinkandbuild.it/ios7-custom-transitions/

最新更新