Я создаю расширение iMessage, где для расширенного стиля презентации я хочу использовать UINavigationController
. Я пытаюсь добавить навигационный контроллер в качестве подвида MSMessagesAppViewController
, используя функцию ниже:
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, как по умолчанию прокрутка.
Кто-нибудь знает решение этого?