Найти тему
Разработка под iOS

Разработка пользовательского интерфейса. Часть 1

Структура проекта

Любой проект состоит из множества файлов, каждый из которых предназначен для решения конкретной задачи.

Панель Project Navigator представлена следующими файлами проекта:

  • Файлы с расширением .swift (AppDelegate, SceneDelegate и ViewController) содержат исходный код приложения.
  • Файлы с расширением .storyboard (Main и LaunchScreen) предназначены для создания графического интерфейса приложения.
  • Папка с расширением .xcassets предназначена для хранения различных ресурсов вроде иконки приложения и картинок.
  • Файл с расширением .plist (property list) предназначен для хранения настроек приложения. Info содержит основные настройки, которые используются для запуска и функционирования приложения.

Разработка пользовательского интерфейса

В Project Navigator выберем файл Main.

Обратите внимание, как изменился Project Editor. Открылся редактор интерфейса (Interface Builder, сокращенно IB), который обеспечивает удобный визуальный способ создания и редактирования графического интерфейса приложения. Способ размещения элементов в Interface Builder определяет то, как вы будете видеть их на своем устройстве в запущенном приложении.

-2

Interface Builder позволяет вам верстать рабочие экраны приложения.

Рабочие экраны в контексте Interface Builder и storyboard-файлов называются сценами (scene).

При этом в составе любой сцены можно выделить следующие элементы:

  • Отображения графических элементов сцены (вьюшек, кнопок, надписей, таблиц и т. д.);
  • Дополнительные элементы, обеспечивающие функциональность сцены. Например, ограничения (constraints), задающие правила расположения элементов на сцене.

Storyboard — это совокупность сцен и связей между ними, представленная в виде файла с расширением .storyboard. Хранится в виде xlm-файла.

-3

Interface Builder предоставляет вам возможность создавать графический интерфейс приложений без написания программного кода.

Помимо Main, в проект входит файл LaunchScreen. Он отвечает за экран загрузки приложения, то есть за графический интерфейс, который отображается после того, как пользователь запустил приложение, но до того, как приложение будет полностью загружено. Как только приложение загрузится, на экране устройства отобразится стартовая сцена (сцена из файла Main).

Элемент View Controller Scene, описывающий сцену, состоит из следующих элементов:

  • View Controller — это главный контроллер сцены. Он управляет всем, что происходит со сценой и на ней: отвечает за ее загрузку на экран, следит за всеми событиями и элементами. С помощью этого элемента проводится предварительная настройка сцены перед ее показом на экране устройства, а также наполняется данными (заполняется таблица, изменяются изображения, редактируются надписи и т. д.).
  • View — это экземпляр класса UIView, который является корневым графическим элементом на данной сцене. В состав данного View могут входить другие графические элементы (например, кнопки, надписи), которые будут отображаться на экране устройства. Так, при отображении сцены View Controller сперва выводит данный View, а потом и все отображения, которые входят в него.
-4

Safe Area — это специальный элемент, описывающий сцену без верхнего бара, где отображается время, информация о сотовой сети, заряде батареи и другой системной информацией, и нижнего бара. Safe Area используется для удобства позиционирования других графических элементов на сцене. С его помощью вам не придется задумываться о том, что кнопки и надписи заползают на поля с системной информацией.

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