我可以将UIView放在当前的导航控制器上吗?

时间:2015-04-10 22:14:05

标签: ios uinavigationcontroller xamarin uinavigationbar uivisualeffectview

如何将UIView置于导航控制器的上方?如果没有自己的自定义导航栏和UIViews自定义标签栏控制器,这是否可行?

让我们说我有一个UITabBarController,我想呈现一个模糊的视图,超越整个事物。对于模糊视图,我使用的是UIVisualEffectView。但我希望模糊视图占据整个屏幕,包括顶部导航栏和底部标签栏。如果我按下一个新的视图控制器,它将占用整个屏幕,但我无法通过它查看下面的内容(标签栏控制器的内容)。

当我在模糊视图中设置动画时,我可以简单地隐藏导航栏和标签栏,但这看起来很尴尬,因为你看到集合视图中的内容因为导航栏隐藏而转移......我不想当模糊视图出现时,看到内容的变化。

enter image description here

这是一个带有东西的UITabBarController。

enter image description here

我想要一个模糊视图来覆盖所有内容,并且能够透视整个UITabBarController以及下面的内容。

1 个答案:

答案 0 :(得分:0)

一种方法是将UIView添加为关键窗口的子视图。有关如何获取关键窗口的信息,请参阅this post。但是,通常最好保留自己的视图层次结构,所以......

另一种方法可能是将新视图控制器显示为全屏模式,并将模糊/透明度应用于该模态视图。