Проблема с альбомной ориентацией панели навигации

Высота панели навигации по умолчанию - 64. Но после изменения ее ориентации на альбомную высоту панели навигации изменилось на 28. Я хочу установить фиксированный размер панели навигации во всей ориентации.


person Vinayak Bhor    schedule 04.03.2018    source источник


Ответы (1)


Вы можете добавить наблюдателя ориентации:

NotificationCenter.default.addObserver(self, selector: #selector(rotated), name: NSNotification.Name.UIDeviceOrientationDidChange, object: nil)

И добавляем метод поворота:

func rotated() {
    let height: CGFloat = 50 //whatever height you want to add to the existing height
    let bounds = self.navigationController!.navigationBar.bounds
    self.navigationController?.navigationBar.frame = CGRect(x: 0, y: 0, width: bounds.width, height: bounds.height + height)
}
person maxwell    schedule 04.03.2018
comment
спасибо за ответ. все еще не решен. @ maxwell панель навигации меняет высоту с 44 на 32 в альбомной ориентации. Ниже этой панели навигации я разместил панель поиска высотой 56. Все еще показывает некоторое пространство между панелью навигации и панелью поиска в альбомной ориентации. - person Vinayak Bhor; 04.03.2018