Чи може хтось простими словами пояснити різницю між .xib та .storyboard?
.timeline
, чи говорите про версії збереженого файлу ?
Чи може хтось простими словами пояснити різницю між .xib та .storyboard?
.timeline
, чи говорите про версії збереженого файлу ?
Відповіді:
Apple представила концепцію "storyboarding"
в iOS5 SDK для спрощення та кращого керування екранами у вашому додатку. Ще можна використовувати .xib
шлях розвитку.
Попередня дошка, кожна з нею UIViewController
була пов’язана .xib
. Storyboard
досягає двох речей:
.storyboard
це по суті один єдиний файл для всіх ваших екранів у додатку, і він показує потоки екранів. Ви можете додавати segues
/ переходити між екранами таким чином. Таким чином, це мінімізує код котла, необхідний для управління кількома екранами.
Мінімізує загальну кількість файлів у додатку.
Ви можете уникнути використання Storyboard
під час створення нового проекту, залишивши прапорець "Використовувати розгорнуту дошку".
Ви можете звернутися до цього підручника, щоб розпочати роботу.
Так, ви все одно можете створити додаток на базі Windows для iOS 5. Якщо ви використовуєте шаблон "порожній проект", ви побачите, що вікно створено для вас у делеґаті програми. Звідти ви можете додати XIB файли як звичайні, або нову розкадровку.
Я припускаю, що ви маєте на увазі "раскадровки", а не "шкала". Дошки оголошень дозволяють візуально відображати всі перегляди ваших програм та спосіб взаємозв'язку. Якщо ви тільки починаєте з розповідей, у відеозаписах WWDC 2011 тут знайдено ознайомлення . Курс iOS для Stanford 2011 на iTunes-U також специфічний для iOS 5 та охоплює розповіді та інші.
Роздільна дошка - це як полотно, куди ви поміщаєте всі свої файли .xib. У вас більше немає .xibs, у вас просто є контролери перегляду безпосередньо на своєму полотні.
розповідь - це нова функція, доступна з моменту випуску Xcode 4.2. Він пропонує абсолютно новий спосіб для розробника iOS створити та створити інтерфейс користувача. До впровадження Storyboard новачок особливо важко створити навігаційний (та вкладковий) інтерфейс. Кожен інтерфейс зберігається в окремому файлі xib. Зверху ви повинні написати код, щоб з'єднати всі інтерфейси разом і описати, як працює навігація.
За допомогою розкадрувань всі екрани зберігаються в одному файлі. Це дає вам концептуальний огляд візуального подання для програми та показує, як підключаються екрани. Xcode забезпечує вбудований редактор для компонування дощок. Ви можете визначити перехід (відомий як segues) між різними екранами, просто скориставшись точкою та клацанням. Це не означає, що вам не потрібно писати код для інтерфейсу користувача. Але Дошка розказок значно зменшує кількість коду, який потрібно написати.
Джерело: http://www.appcoda.com/use-storyboards-to-build-navigation-controller-and-table-view/
XIB:
1) Файли Xib використовуються з одним UIView.
2) Реалізувати складні автоматичні макети в xib дуже важко.
3) Він використовує більше пам’яті в порівнянні з табло та тихо повільно.
4) Він сумісний з iOS5 і далі
5) Ви можете робити локалізації для різних мов та країн, використовуючи різні XIB.
6) Використовувати один і той же Xib важко для підтримки декількох пристроїв.
Дошка розкадрувань
1) Ви можете розташувати всі свої сцени, як контролери перегляду, Nav-контролери, контролери TabBar тощо, на одній дошці розкадровки.
2) Ви можете легко використовувати автоматичний макет, який визначає математичні зв’язки між елементами, що визначають їх положення та розміри.
3) Зазвичай швидко і виділяє менше пам'яті.
4) Він не сумісний до iOS 5.
5) "Динамічні" та "Прототипові" комірки можна легко використовувати.
6) Дошки з розгортанням найкраще використовувати для додатків із невеликою та середньою кількістю екранів.
Найкраща відповідь, яку я бачив: Xib Vs Storyboard в iOS
XIB та Storyboard використовуються для створення інтерфейсів для користувачів.
Важливим моментом є те, що xibs використовується для створення єдиного перегляду (у нього є один власник файлу у верхній частині файлу xib), але у випадку для viewcontroller можна додавати кілька екранів, а його потік також можна контролювати (він має окремі власники файлів).