Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 使用UITabBarController时,是否在整个屏幕上覆盖视图?_Iphone_Objective C_Ios_Uitabbarcontroller_Hud - Fatal编程技术网

Iphone 使用UITabBarController时,是否在整个屏幕上覆盖视图?

Iphone 使用UITabBarController时,是否在整个屏幕上覆盖视图?,iphone,objective-c,ios,uitabbarcontroller,hud,Iphone,Objective C,Ios,Uitabbarcontroller,Hud,我想在UITabBarController设置中将HUD样式的透明图形覆盖在整个屏幕上。完成此操作的按钮位于第一个选项卡的屏幕(FirstViewController)中,覆盖也应覆盖选项卡。。。这可能吗 您可以将新视图直接附加到窗口 [[[UIApplication sharedApplication] keyWindow] addSubview:myNewView]; Henrik p.Hessel的上述解决方案是好的,但该解决方案存在一个问题。elsurudo在回答下面的评论中已经提到了

我想在UITabBarController设置中将HUD样式的透明图形覆盖在整个屏幕上。完成此操作的按钮位于第一个选项卡的屏幕(FirstViewController)中,覆盖也应覆盖选项卡。。。这可能吗

您可以将新视图直接附加到窗口

[[[UIApplication sharedApplication] keyWindow] addSubview:myNewView];

Henrik p.Hessel的上述解决方案是好的,但该解决方案存在一个问题。elsurudo在回答下面的评论中已经提到了这个问题


这个解决方案的问题是出现了覆盖 倒置,不旋转

我面对同样的问题,我尝试了不同的方法,我得到了一个解决方案来消除这个问题

解决办法很简单。您可以将
myNewView
添加到
UITabBarController
的视图中

[self.tabBarController.view addSubview:myNewView];
希望对未来的游客有帮助

UIView *modal = [[UIView alloc] initWithFrame:self.view.window.frame];
[self.view.window addSubview:modal];

这可能与上面提到的
[[UIApplication sharedApplication]keyWindow]
相同。但是我喜欢通过当前视图引用它。

我真的很喜欢Chase Robert在这里写的东西,所以我想提供Swift 3。版本也包括:

    if let window = view.window {
        let subView = UIView(frame: window.frame)
        window.addSubview(subView)
    }
我还添加了该条件,因此如果没有窗口,就不会发生崩溃。

受此启发,我建议将UITabBarController置于容器视图其他
视图控制器中。然后将hud添加到
ViewController
view


这个解决方案的问题是,覆盖层上下颠倒,不旋转。有人知道这方面的修复方法吗?方向仅传递给添加到窗口中的第一个视图控制器。如果只添加视图(不添加控制器),则在引用其他人的答案时,必须首先设置状态栏的旋转(请参见此处的答案:),您需要按名称提及他们。我编辑了你的答案以符合这一点。有关更多信息,请参阅我们的。