2017-01-17 4 views
2

ユーザーが通話中に自分のアプリを開いたり、ステータスバーを倍長にする何か他の操作を行ったりすると、レイアウト全体ステータスバーの高さだけ押し下げられます。例えばiOSステータスバーの高さが正しくないときに電話をかけたとき

ユーザーが通話に入り、彼らはアプリですでにある場合は、その後、レイアウトは次のようになります。ユーザーが通話中の場合、しかし、

enter image description here

そして彼らは、アプリを入力し、レイアウトが(画像の下で切断されたナビゲーションバーが問題ではなく、スクリーンショットに問題の一部である)のようになります。

enter image description here

私のすべてのレイアウトはStoryBoardを通じて作成され、AutoLayoutを使用しています。私は最近、悪いと思われるAutoLayout制約を見直して修正しました。

何が起こっているのか、これを修正する方法についてのガイダンスがあれば、非常に感謝しています。次

答えて

1

()となどUITabBarControllerのサイズを変更:

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

これはうまくいきましたが、私はそれを私のビュー構造のために少し微調整しなければなりませんでした。ありがとう! – Stoph

0

使用:あなたのタブバーコントローラの生活は、あなたがviewDidLayoutSubviewsを上書きすることを確認してくださいあなたのメインビューコントローラでは、

func viewWillLayoutSubviews{ 
    self.view.layoutIfNeeded() 
} 
+0

ありません運。また、これを呼び出す前に 'self.view.setNeedsLayout()'を呼び出すことも試みました。 – Stoph

関連する問題