在UITabBarController中呈现新的UIViewControler

时间:2016-07-17 20:11:00

标签: ios swift xcode

我有一个带导航栏的UITabBarController。在NavigationBar中有一个按钮,它实例化一个带有UINavigationController的新UIViewController:self.presentViewController(nav, animated: true, completion: nil),正如我所期望的那样,视图是通过全屏显示的。

那么,我的问题是:如何在不隐藏/重叠我的Tabbar的情况下呈现新的UIViewController?

1 个答案:

答案 0 :(得分:0)

您应确保在要显示的视图控制器上设置正确的modalPresentionStyle。可能是.CurrentContext.OverCurrentContext。为此,您还应在definesPresentationContext上将true设置为selectedViewController。在UITabBarController子类中:

nav.modalPresentationStyle = .CurrentContext
self.selectedViewController?.definesPresentationContext = true
self.selectedViewController?.presentViewController(nav, animated: true, completion: nil)