IPhone IOS5 Storyboard, как загрузить UIViewController с пользовательским .xib файлом?
У меня есть UIViewControllers из моего старого проекта iOS4, они используют .xib, созданный в конструкторе интерфейса.
Мой новый проект, построенный для iOS5, использует раскадровки.
Я пытаюсь добавить UIViewController в раскадровку, но использую пользовательский XIB, который у меня уже есть. Я установил идентификатор контроллера в инспекторе indentity (в построителе интерфейса), но не уверен, что , как спросить, что контроллер загружает пользовательский .xib.
Любая помощь приветствуется!
PS. На сегодняшний день мне удалось обойти это, создав класс "обертка" для целей раскадровки, и у этого класса есть другой UIViewController. Но этот вид поражает весь смысл раскадровки.
Ответы
Ответ 1
Вы можете скопировать содержимое xib в раскадровку, а затем создать экземпляр, используя:
- (id)instantiateViewControllerWithIdentifier:(NSString *)identifier
после установки на нем идентификатора. Если вам нужен экземпляр раскадровки, вы можете получить его так:
[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
Ответ 2
Ответ Майка К. неверен.
При смешивании XIB и Storyboards на самом деле не решаются проблемы с Alex, это вполне возможно сделать в рамках одного и того же проекта.
Смотрите: fooobar.com/questions/33986/... re: загрузка второй раскадровки.
Я не уверен, что если включить "Основная раскадровка" в сводке цели, желательно, если вы планируете это сделать, но если вы сначала загрузили XIB вместо раскадровки, вы можете изменить связанный код выше, чтобы загрузить раскадровку после XIB.
Я не уверен, что вы можете прыгнуть в середину раскадровки из XIB, что, возможно, было тем, что имел в виду Майк.
Ответ 3
Вы не можете смешивать xibs и раскадровки в своем проекте - это один из других, я боюсь.