Я использую UINavigationController в качестве своего корневого представления и нажимаю экземпляры UIViewController на стек.UINavigationController NavigationBar дополнительное пространство в верхней части окна
Мои контроллеры просмотра, полученные из базы, которая рисует радиальный фон градиента во время просмотраWillAppear.
С свойством NavigationBar.translucent, установленным в NO/false, первый контроллер представления, вставленный в стек, имеет y-компонент представления, установленный на высоту NavigationBar, эффективно создавая пустое пространство между навигационной панелью и содержимым представления. Последующий контроллер представления, вставленный в стек, не имеет этой проблемы.
Я перепробовал pushViewController в своем контроллере навигации и установил для NavigationBar.translucent значение YES, если массив navigationController.viewControllers был пуст. Выполнение этого избавляет от пространства на первом контроллере представления, но это не совсем то, что я хочу, поскольку я не хочу полупрозрачных навигационных баров.
Я распечатал рамку представления во время различных фаз жизненного цикла, и только первый вид имеет модифицированный компонент, дополнительные представления имеют значение y, равное 0. Я не изменяю рамку представления корня в любом из контроллеров представления ,
Мой вопрос: что я делаю неправильно? Я знаю, что это проблема с первым контроллером представления из-за моего переопределения, но поскольку я не вижу тонны сообщений об этом, я предполагаю, что я сделал что-то неправильно.
Мой вопрос похож на это: Container View getting pushed down as if it had a UINavigationBar?
вы можете показать скриншоты, пожалуйста? –
Вот скриншот: https://dl.dropboxusercontent.com/u/6349532/screen.png (черный по верхнему краю - это пробел.) – Cameron