私のアプリケーションをiOS 11に移行するのに苦労しています。再利用のために、私は階層を複数のStoryBoardに分割しました。最初のStoryBoardには、タブバーと特別なビュー(MonitoringView)をホストするカスタムコンテナビューコントローラがあります。これはUINavigationControllerに埋め込まれています。すべてのタブで同じ機能とタイトルが必要なので、このコントローラーをナビゲーションコントローラーに埋め込みました。私は、地図を表示したいタブの一つでiOS 11 NavViewerの下のMapViewコンパスとSafeAreaがiOS 10で動作しない
。 StoryBoardではマップを0でSuperViewに固定していましたので、ナビゲーションとタブバーの下に表示されます。ここでは、View ControllerのSafeAreaに固定したカスタムコントロールもあります。私はアプリを実行したときに
は今、私は、子コントローラ(マップを持つ1)の安全なエリアインセットを調整するために、コンテナコントローラに
if #available(iOS 11.0, *) {
controller.additionalSafeAreaInsets = UIEdgeInsetsMake(monitoringView.frame.size.height, 0, tabBar.frame.size.height, 0)
}
を使用しています。
セーフエリアに固定した余分なコントロールはうまく動作しますが、地図のコンパスと法的通知はiOS 11のナビゲーション/タブバーの下に表示されません。iOS 10ではコントロールはバーの下にありますが通知とコンパスは、私は今の日のためのソリューションを探していますし、私は非常に多くの異なるものを試してみました
ビューの中心に遠くにあります。私は本当に必死で、私が間違っていることを知らない。どんなヒントも高く評価されます。