我有一个UINavigationController作为子视图控制器显示,它占据了屏幕的一部分。我已经在情节提要中使用了一个简单的嵌入segue来呈现它。
该UINavigationController的rootViewController有一个小的UIView,我想将其扩展到子视图控制器容器的边界之外。
我的层次结构如下所示:
1) Main View
2) Container Nav Controller
3) Root View Controller
4) UIView which should extend past the bounds of 2
我已经在所有包含视图上将clipsToBounds = false设置为无效。
进行一些视图调试会显示2到3之间的
UINavigationTransitionView
,其中clipsToBounds = false。我很确定这是导致问题的原因(作为企业应用程序,我不介意使用 private API)。如何允许视图扩展到所有容器之外?
最佳答案
在containerView
下的包含viewDidLoad()
的ViewController中,在为containerView
创建出口之后添加以下代码:
let layoutContainerView = self.containerView.subviews.first;
let navigationTransitionView = layoutContainerView?.subviews.first;
navigationTransitionView?.clipsToBounds = false;
这有点怪,基本上
navigationController
的view
的第一个子视图是UINavigationTransitionView
,其中clipsToBounds = true
。关于ios - 如何扩展UIView过去包含的UINavigationController,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43880796/