IOS 8 Запуск файла изображения - панель навигации и строка состояния

Я использую Interface Builder, чтобы сделать файл образа запуска для iOS 8. Ядро запускающее изображение очень просто (так же, как и приложение "Настройки", я думаю) - панель навигации вверху с пустым Grouped TableView, Нет названия и т.д.

Заметьте, что я обычно не использую Interface Builder - так что IB вещь совершенно новая для меня.

Я пытаюсь достичь этого, добавив панель навигации и представление таблицы в представление - и затем установив ограничения. Ограничения (и цвета) работают нормально, но...

Проблема: изображение запуска отображается в полноэкранном режиме по строке состояния. Вот так:

enter image description here

Как получить как строку состояния, так и панель навигации?

Как я уже сказал, я работаю с стандартным "UIView", который вы получаете, когда вы выбираете, чтобы добавить экран запуска в Xcode. Таким образом, нет контроллера навигации; что проблема?

Кроме того, в UIView есть некоторые опции, которые, похоже, должны дать мне то, что я хочу:

enter image description here

Я пробовал играть с параметрами строки состояния, но он не совсем работает.

  • Нужен ли мне вывод или значение по умолчанию?
  • Я вижу небольшое смещение между изображением запуска (панель состояния + панель навигации) и фактическим запуском приложения, если я просто неправильно разместил его?
  • Какова цель опции Top Bar?
  • Для образа запуска, который я хочу, мне даже нужно добавить TableView в качестве подзаголовка, или я могу использовать цвет фона на главном UIView? Я пробовал это, но потом я получаю несоответствие цветов со строкой состояния/панелью навигации...

Для конструктора интерфейсов noob, как создать файл экрана запуска, который реплицирует приложение настройки?

Ответ 1

Если вы используете файл раскадровки, вы можете настроить свое представление как корневое представление в Сценарии навигационного контроллера. Навигационная панель навигационного контроллера автоматически позиционирует себя ниже строки состояния.

Example

Не забудьте установить контроллер навигации в качестве начального контроллера представления (путем проверки "Контроллер начального представления" на панели свойств)

Сценарий контроллера навигации автоматически добавляет контроллер табличного представления в качестве вложенного контроллера, когда вы добавляете его в раскадровку.

Если вы хотите заменить его другим контроллером, вам нужно будет удалить контроллер табличного представления из раскадровки, добавить контроллер, который вы хотите использовать в раскадровку, а затем подключить его (по команде + перетаскивание из навигации контроллер к контроллеру представления, а затем выберите выход rootViewController)

ПРИМЕЧАНИЕ Объекты (viewcontrollers и т.д.) в раскадровке экрана запуска не должны иметь никаких IBOutlets. Это приведет к ошибкам.