0

我在这里遇到了一些奇怪的情况,并且一直在尝试寻求帮助,但是这些解决方案并不能真正解决我的问题,而是使情况变得更糟。

我有一个容器 viewController,它在水平滚动视图中有三个子控制器视图。我的默认子控制器视图是我的自定义相机页面。现在这就是我想要实现的目标。我想将状态栏隐藏在我的相机页面上,但希望其他两个视图(也就是我的另外两个子控制器)显示状态栏。

当我从左子控制器拖动到相机页面或从右子控制器拖动到相机页面时,我希望我的相机页面视图与状态栏重叠。

我唯一看到这样做的地方是在 Snapchat 上,我已经尝试了几个小时来弄清楚,但似乎无法提出解决方案。任何帮助表示赞赏。

4

1 回答 1

1

您可以使用真正的状态栏来做到这一点。只需获取 Statusbars UIView,然后您需要像这样使用 UIWindowLevel

    //Getting the Statusbar

    UIView *statusbar;
    NSString *key = @"statusBar";
    id object = [UIApplication sharedApplication];
    if ([object respondsToSelector:NSSelectorFromString(key)]) {
        statusbar = [object valueForKey:key];
    }

    //Set your Overlapping UIViewController or UIView one Level higher then the Statusbar.
    self.navigationController.view.window.windowLevel = UIWindowLevelStatusBar+1; //This will set the Overlapping UIViewControllers WindowLevel over the StatusBar.
于 2014-09-09T04:30:58.047 回答