Swift 当视图控制器从nib文件获得加载时,在当前上下文上以模态方式呈现视图控制器

Swift 当视图控制器从nib文件获得加载时,在当前上下文上以模态方式呈现视图控制器,swift,xcode,nib,uimodalpresentationstyle,Swift,Xcode,Nib,Uimodalpresentationstyle,我需要展示视图控制器B,它是从一个xib文件加载到一个从故事板加载的现有视图控制器a上的 如果我从故事板加载视图控制器B,它工作正常,将在视图控制器A的当前上下文中显示,但如果我从nib文件加载它,它将不会在当前上下文中显示 从nib加载: let vc = ViewControllerB() vc.modalTransitionStyle = .crossDissolve vc.modalPresentationStyle = .overCurrentContext present(vc, a

我需要展示视图控制器B,它是从一个xib文件加载到一个从故事板加载的现有视图控制器a上的

如果我从故事板加载视图控制器B,它工作正常,将在视图控制器A的当前上下文中显示,但如果我从nib文件加载它,它将不会在当前上下文中显示

从nib加载:

let vc = ViewControllerB()
vc.modalTransitionStyle = .crossDissolve
vc.modalPresentationStyle = .overCurrentContext
present(vc, animated: true, completion: nil)
从情节提要加载:

let vc: ViewControllerB = ViewControllerB.instantiate()
let navigationController = UINavigationController(rootViewController: vc)
navigationController.setNavigationBarHidden(true, animated: false)
navigationController.modalPresentationStyle = .overCurrentContext
(tabBarController as? TabBarController)?.present(navigationController, animated: true, completion: nil)
TabBarController是我的自定义控制器


如果我从xib文件加载它,视图控制器B将完全显示在视图控制器A的顶部,以便显示样式不超过当前上下文,我仍然希望看到下面的视图或视图控制器A。这里有许多相关的帖子,但没有一篇提到在当前视图控制器上下文中显示由xib文件制作的视图控制器。

通过故事板或nib文件加载视图对在当前上下文中以模式显示视图没有任何影响,在本例中,我将父控制器的背景色更改为从子控制器顶部可见