iOS Technologies
Вы только что изучили, как записать приложение с простым пользовательским интерфейсом и основным поведением. В этой точке можно думать о реализации дополнительного поведения, которое превратит проект в полнофункциональное приложение.
Как Вы полагаете, какие опции Вы хотите добавить, помните, что Вы не должны реализовывать все с нуля. iOS служит основами, определяющими определенные наборы функциональности — от игр и носителей к управлению безопасностью и управлению данными — который можно интегрировать в приложение. Вы уже использовали платформу UIKit для разработки пользовательского интерфейса приложения и платформы Основы для слияния структур общих данных и поведения в код. Это две из наиболее распространенных платформ, используемых в разработке приложения для iOS, но существуют многие более доступные Вам.
Эта глава является общим обзором технологий и платформ, что Вы могли бы рассмотреть принятие в своем приложении. Используйте эту главу в качестве начальной точки для возможных технологий для исследования. Для полного обзора технологий, доступных в iOS, см. Технологический Обзор iOS.
Пользовательский интерфейс
UIKit. Классы платформы UIKit позволяют Вам создать сенсорный пользовательский интерфейс. Поскольку все приложения для iOS основываются на UIKit, Вы не можете поставить приложение без этой платформы. UIKit обеспечивает инфраструктуру для рисования на экран, обработка событий и создание элементов общего пользовательского интерфейса. UIKit также организует сложное приложение путем управления содержанием, которое это вывело на экран на экране. См. Ссылку Платформы UIKit.
Базовая Графика. Базовая Графика — низкий уровень, платформа на базе С — является рабочей лошадью для обработки высококачественной векторной графики, находящегося на пути получения, трансформаций, изображений, управление данными и т.д., Конечно, самый простой и самый эффективный способ создать графику в iOS состоит в том, чтобы использовать предварительно представленные изображения со стандартными представлениями и средствами управления платформы UIKit, позволяя iOS сделать получение. Поскольку UIKit, высокоуровневая платформа, также обеспечивает классы для пользовательского получения — включая пути, цвета, образцы, градиенты, изображения, текст, и трансформации — используют его вместо Базовой Графики, когда это возможно. Посмотрите Базовую Графическую Ссылку Платформы.
Базовая Анимация. Базовые интерфейсы Анимации являются частью Кварцевой платформы Ядра. Используйте Базовую Анимацию для создания усовершенствованных анимаций и визуальных эффектов. UIKit обеспечивает анимации, создающиеся поверх Базовой технологии Анимации. При необходимости в усовершенствованных анимациях вне возможностей UIKit используйте Базовую Анимацию непосредственно. Можно создать иерархию расположенных на слое объектов, которыми Вы управляете, поворачиваете, масштабируете, преобразовываете и т.д. Знакомая подобная представлению абстракция базовой Анимации позволяет, можно создать динамические пользовательские интерфейсы, не имея необходимость использовать низкокачественную графику APIs, такой как OpenGL ES. См. Базовое Руководство по программированию Анимации.
Игры
GameKit. Платформа GameKit обеспечивает списки лидеров, достижения и другие функции для добавления к игре iOS. Посмотрите Ссылку Платформы GameKit.
SpriteKit. Платформа SpriteKit предоставляет графическую поддержку для анимации произвольных текстурированных изображений или спрайтов. В дополнение к тому, чтобы быть графическим механизмом это также включает поддержку физики для реализовывания объектов. SpriteKit является хорошим выбором для игр и других приложений, требующих сложных цепочек анимации. (Для других видов анимации пользовательского интерфейса используйте Базовую Анимацию вместо этого.) См. Руководство по программированию SpriteKit.
OpenGL ES. ES OpenGL является низкоуровневой платформой, поддерживающей аппаратно ускоренное 2D и 3D получение. Реализация Apple OpenGL стандарт ES работает в тесном сотрудничестве с оборудованием устройства для обеспечения высоких частот кадров для полноэкранного, приложений игрового стиля. Поскольку OpenGL, ES является низким уровнем, фокусируемым на аппаратных средствах API, он имеет крутую кривую обучения и значительный эффект на общий замысел Вашего приложения. (Для приложений, требующих высокоэффективной графики для более специализированного использования, рассмотрите SpriteKit или Базовую Анимацию.) Посмотрите OpenGL Руководство по программированию ES для iOS.
Игровой контроллер. Платформа Игрового контроллера упрощает считать контроллеры подключенными к Mac или устройству на iOS. Когда контроллер обнаружен на Вашем устройстве, Ваши игровые вводы управления чтениями как часть его нормального геймплея. Эти контроллеры обеспечивают новые пути к проигрывателям для управления игрой. Apple разработал спецификации для аппаратных контроллеров, чтобы гарантировать, чтобы все контроллеры имели непротиворечивые множества элементов управления, на которые могут полагаться и проигрыватели и разработчики компьютерных игр. Посмотрите Ссылку Платформы Игрового контроллера.
Данные
Базовые Данные. Базовая платформа Данных управляет моделью данных приложения. Используйте его для создания объектов модели, известных как управляемые объекты. Вы управляете отношениями между теми объектами и вносите изменения в данные через платформу. Базовые Данные используют в своих интересах встроенную технологию SQLite, чтобы сохранить и управлять данными эффективно. Посмотрите Базовую Ссылку Платформы Данных.
Основа. Вы работали с Основой ранее в этом руководстве. Платформа Основы определяет ряд полезных базовых классов. Среди прочего эта платформа включает классы, представляющие типы исходных данных, такие как строки и числа и классы набора для того, чтобы хранить другие объекты. Посмотрите Ссылку Платформы Основы.
Носители
Основа AV. Основа AV является одной из нескольких платформ, которые можно использовать, чтобы играть и создать основанные на времени аудиовизуальные носители. Например, используйте Основу AV, чтобы исследовать, создать, отредактировать, или повторно закодировать медиа-файлы. Можно также использовать его, чтобы получить введенные потоки от устройств и управлять видео во время получения в реальном времени и воспроизведения. См. Ссылку Платформы Основы AV.