Может кто-нибудь объяснить простыми словами разницу между .xib и .storyboard?
В чем разница между файлом .xib и .storyboard?
Ответ 1
Apple представила концепцию "storyboarding"
в iOS5 SDK для упрощения и улучшения управления экранами в вашем приложении. Вы все еще можете использовать способ развития .xib
.
Пред-раскадровка, каждая UIViewController
имела с ней .xib
. Storyboard
достигается две вещи:
-
.storyboard
- это по существу один файл для всех ваших экранов в приложении, и он показывает поток экранов. Таким образом вы можете добавитьsegues
/переходы между экранами. Таким образом, это сводит к минимуму код шаблона, необходимый для управления несколькими экранами. -
Минимизирует общее количество файлов в приложении.
Вы можете избежать использования Storyboard
при создании нового проекта, оставив опцию "Использовать раскадровку" непроверенной.
Вы можете сослаться на этот учебник, чтобы начать.
Ответ 2
Да, вы все равно можете создать приложение на основе окон для iOS 5. Если вы используете шаблон "пустой проект", вы увидите, что для вас в делегате приложения создано окно. Оттуда вы можете добавить файлы XIB как обычно, или новую раскадровку.
Я предполагаю, что вы имеете в виду "раскадровки", а не "временную шкалу". Раскадровки позволяют отображать, визуально, все виды в ваших приложениях и то, как они взаимосвязаны. Если вы только начинаете с раскадровки, там представлено введение в раскадровки в видео WWDC 2011 здесь. 2011 курс Stanford iOS на iTunes-U также относится к iOS 5 и охватывает раскадровки и многое другое.
Ответ 3
Раскадровка похожа на холст, где вы помещаете все ваши .xib файлы. У вас больше нет .xib, у вас просто есть контроллеры просмотра прямо на вашем холсте.
Ответ 4
раскадровка - это новая функция, доступная с момента выпуска Xcode 4.2. Он предлагает совершенно новый способ разработки и разработки iOS-разработчика пользовательский интерфейс. До введения Раскадровки, особенно для новичков трудно создать интерфейс навигации (и вкладки). каждый интерфейс хранится в отдельном файле xib. Кроме того, вы должны напишите код, чтобы связать все интерфейсы и описать, как навигации.
С помощью раскадровки все экраны хранятся в одном файле. Это дает вы концептуальный обзор визуального представления для приложения и показывает, как подключены экраны. Xcode предоставляет встроенный редактор для размещения раскадровки. Вы можете определить переход (известный как segues) между различными экранами, просто используя точку и щелчок. Эта не означает, что вам не нужно писать код для пользовательского интерфейса. Но Раскадровки значительно уменьшают объем кода, который вам нужно написать.
Источник: http://www.appcoda.com/use-storyboards-to-build-navigation-controller-and-table-view/
Ответ 5
XIB:
1) Xib файлы используются с одним UIView.
2) Очень сложно реализовать сложные автоматические макеты в xib.
3) Он использует больше памяти по сравнению с раскадрой и тихонько замедляется.
4) Он совместим с iOS5 и далее
5) Вы можете выполнять локализацию для разных языков и стран, используя разные XIB.
6) Трудно использовать один и тот же Xib для поддержки нескольких устройств.
Раскадровка
1) Вы можете разместить все свои сцены, такие как контроллеры просмотра, контроллеры Nav, контроллеры TabBar и т.д. в одном раскадровке.
2) Вы можете легко использовать автоматический макет, который определяет математические отношения между элементами, определяющими их положение и размер.
3) Обычно быстро и выделяет меньше памяти.
4) Он не совместим до iOS 5.
5) "Динамические" и "Prototype" ячейки могут быть легко использованы.
6) Раскадранты, которые лучше всего использовать для приложений с небольшим или средним количеством экранов.
Лучший ответ, который я видел: Xib Vs Storyboard в iOS