Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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
在通话中,iOS状态栏高度不正确_Ios_User Interface_Autolayout_Statusbar - Fatal编程技术网

在通话中,iOS状态栏高度不正确

在通话中,iOS状态栏高度不正确,ios,user-interface,autolayout,statusbar,Ios,User Interface,Autolayout,Statusbar,我发现了一个问题,如果用户在通话时打开我的应用程序,或者做了其他事情导致状态栏的高度增加了一倍,那么整个布局就会被状态栏的高度压低 例如,如果用户输入呼叫,并且他们已经在应用程序中,则布局将如下所示: 但是,如果用户已经在通话中,并且他们进入应用程序,则布局将如下所示(图像底部的导航栏被切断是问题的一部分,而不是屏幕截图的问题): 我的所有布局都是通过故事板创建的,并且都使用自动布局。我最近还检查并修复了任何看起来不好或不合适的自动布局约束 如果有人对可能发生的事情有指导,或者有解决问题的方

我发现了一个问题,如果用户在通话时打开我的应用程序,或者做了其他事情导致状态栏的高度增加了一倍,那么整个布局就会被状态栏的高度压低

例如,如果用户输入呼叫,并且他们已经在应用程序中,则布局将如下所示:

但是,如果用户已经在通话中,并且他们进入应用程序,则布局将如下所示(图像底部的导航栏被切断是问题的一部分,而不是屏幕截图的问题):

我的所有布局都是通过故事板创建的,并且都使用自动布局。我最近还检查并修复了任何看起来不好或不合适的自动布局约束

如果有人对可能发生的事情有指导,或者有解决问题的方法,我们将不胜感激

使用以下内容:

func viewWillLayoutSubviews{
     self.view.layoutIfNeeded()
 }

在选项卡栏控制器所在的主视图控制器中,确保覆盖viewDidLayoutSubviews(),并按如下方式调整UITabBarController的大小:

override func viewDidLayoutSubviews() {
    super.viewDidLayoutSubviews()
    self.myTabViewController.view.frame = self.view.bounds
}

不走运。在调用此函数之前,我还尝试调用了
self.view.setNeedsLayout()
,但仍然没有任何效果。虽然我不得不对其进行一些调整,以适应我的视图结构。谢谢