私はプレゼンテーションスタイルの拡張のためにiMessage拡張を作成しています私はUINavigationController
を使いたいと思います。私は、以下の機能を使用してMSMessagesAppViewController
のサブビューとしてナビゲーションコントローラを追加しようとしています:MSMessagesAppViewControllerのサブビューとしてのUINavigationController
private func present(viewController: UIViewController) {
viewController.view.frame = view.frame
addChildViewController(viewController)
viewController.didMove(toParentViewController: self)
view.addSubview(viewController.view)
}
私はそのナビゲーションバーがちょうどトップバーの下に始まる、ナビゲーションコントローラは、従来の方法で表示されるように期待していましたiMessage自体の私の予想される結果については、以下の図を参照してください。
しかし、それは実際にview.frame
を思わIMessageがトップバーの下に拡張します。したがって、ナビゲーションコントローラのナビゲーションバーは、iMessageの上部バーの下に隠されています。ただし、スクロールビュー自体のコンテンツビューは、さらにカスタマイズすることなく正しく配置されます。実際の結果は、以下の図を参照してください。
もちろん、私は、トップバーの下を開始するには、ナビゲーションコントローラの枠を設定することができます。しかし、ハードコーディングされたポジションにあまり依存しないソリューションを探しています。これを行うと、その半透明エフェクトのiMessageのトップバーの下にスクロールビューも継続しません。
スクロールビューがデフォルトで行うように、理想的にはナビゲーションバーがiMessageのトップバーのすぐ下に表示されます。
誰にも解決策がありますか?
もっと良い解決策があるようです。http://stackoverflow.com/questions/38426146/how-to-keep-navigation-bar-from-disappearing-with-msmessagesviewcontroller-ui – nouatzi